ZPP_(độ_phức_tạp)

Trong lý thuyết độ phức tạp tính toán, ZPP (viết tắt của zero-error probabilistic polynomial time - thời gian đa thức với xác suất sai bằng không) là lớp độ phức tạp bao gồm các bài toán sao cho tồn tại máy Turing ngẫu nhiên với các tính chất sau:Nói cách khác, thuật toán được phép sử dụng các lần tung đồng xu ngẫu nhiên/bit ngẫu nhiên. Kết quả của thuật toán luôn chính xác. Các thuật toán như vậy gọi là thuật toán Las Vegas. Với bài toán có kích thước n, tồn tại đa thức p(n) sao cho thời gian chạy trung bình luôn nhỏ hơn p(n) cho mọi dữ liệu vào. Tuy nhiên, với một số bộ giá trị của các bit ngẫu nhiên, thuật toán có thể chạy chậm hơn rất nhiều.Một định nghĩa khác của ZPP là lớp các bài toán có máy Turing thỏa mãn các tính chất sau:Hai định nghĩa trên là tương đương.ZPP được định nghĩa dựa trên máy Turing ngẫu nhiên. Máy này cũng được dùng để định nghĩa các lớp khác như BPPRP. Lớp BQP được định nghĩa dựa trên máy tính lượng tử ngẫu nhiên.