Bằng chứng của Adman về được chứa trong cho thấy rằng nếu có một thuật toán ngẫu nhiên cho một vấn đề chạy trong thời gian trên các đầu vào có kích thước , thì cũng có một thuật toán xác định cho vấn đề chạy theo thời gian trên các đầu vào có kích thước [thuật toán chạy thuật toán ngẫu nhiên trên các chuỗi ngẫu nhiên độc lập . Phải có sự ngẫu nhiên cho thuật toán lặp lại phù hợp với cảP / p o l y t ( n ) n Θ ( t ( n ) ⋅ n )Θ ( n ) 2 nđầu vào có thể]. Thuật toán xác định là không đồng nhất - nó có thể hoạt động khác nhau đối với các kích cỡ đầu vào khác nhau. Vì vậy, lập luận của Adman cho thấy - nếu người ta không quan tâm đến tính đồng nhất - thì ngẫu nhiên chỉ có thể tăng tốc thuật toán theo một yếu tố tuyến tính trong kích thước đầu vào.
Một số ví dụ cụ thể trong đó ngẫu nhiên tăng tốc tính toán (theo sự hiểu biết tốt nhất của chúng ta) là gì?
Một ví dụ là kiểm tra danh tính đa thức. Ở đây, đầu vào là một mạch số học có kích thước n tính toán một đa thức biến thiên m trên một trường và nhiệm vụ là tìm hiểu xem đa thức có bằng 0 hay không. Một thuật toán ngẫu nhiên có thể đánh giá đa thức trên một điểm ngẫu nhiên, trong khi thuật toán xác định tốt nhất mà chúng ta biết (và có thể là tốt nhất tồn tại) đánh giá đa thức trên nhiều điểm.
Một ví dụ khác là cây bao trùm tối thiểu, trong đó thuật toán ngẫu nhiên tốt nhất của Karger-Klein-Tarjan là thời gian tuyến tính (và xác suất lỗi nhỏ theo cấp số nhân!), Trong khi thuật toán xác định tốt nhất của Chazelle chạy trong thời gian ( là hàm Ackermann nghịch đảo, do đó tốc độ tăng ngẫu nhiên thực sự rất nhỏ). Thật thú vị, Pettie và Ramachandran đã chứng minh rằng nếu có thuật toán thời gian tuyến tính xác định không đồng nhất cho cây bao trùm tối thiểu, thì cũng tồn tại thuật toán thời gian tuyến tính xác định thống nhất.α
Một số ví dụ khác là gì? Những ví dụ nào bạn biết tốc độ tăng ngẫu nhiên là lớn, nhưng điều này có thể chỉ vì chúng tôi chưa tìm thấy thuật toán xác định đủ hiệu quả?