Vấn đề quyết định sao cho bất kỳ thuật toán nào thừa nhận thuật toán nhanh hơn theo cấp số nhân


19

Trong Thuật toán của Hromkovič cho các vấn đề khó khăn (ấn bản thứ 2) có định lý này (2.3.3.3, trang 117):

Có một vấn đề quyết định (có thể quyết định) sao cho với mọi thuật toán giải được có một thuật toán khác cũng giải quyết được và hoàn thành thêmPP Một ' PAPAP
nN.TimeA(n)=log2TimeA(n)

TimeA(n) là thời gian chạy trường hợp xấu nhất của trên các đầu vào có kích thước và có nghĩa là "cho tất cả nhưng rất nhiều".n An

Một bằng chứng không được đưa ra và chúng tôi không biết làm thế nào để đi về điều này; Nó thực sự khá phản trực giác. Định lý có thể được chứng minh như thế nào?


1
Đối với tiêu đề, có thể một cái gì đó như: "Có một vấn đề quyết định mà bất kỳ thuật toán giải quyết nào có thể được cải thiện?" Điều đó đã được nói, đó chỉ là một phát súng trong bóng tối, nhưng không phải đó là trường hợp thoái hóa cho một vấn đề quyết định tầm thường sao? Bằng cách nào đó, nếu bạn xoay chuyển sự bình đẳng, điều đó có nghĩa là luôn luôn có thể giải quyết vấn đề theo cách "tệ nhất" (bằng cách thực hiện các bước vô ích). Nhưng đó chỉ là dự đoán.
Charles

Câu trả lời:


12

Nó dường như là một trường hợp đơn giản của Định lý Speedup của Blum :

Đưa ra một số đo độ phức tạp Blum và tổng hàm tính toán với hai tham số, sau đó tồn tại tổng số biến vị ngữ (hàm tính toán có giá trị Boolean) để mọi chương trình cho , đều tồn tại một chương trình cho sao cho gần như tất cảf g i g j(φ,Φ)fgigjx f ( x , Φ j ( x ) ) Φ i ( x )gx

f(x,Φj(x))Φi(x)

Chỉ cần để số đo độ phức tạp là thước đo độ phức tạp thời gian (ví dụ là độ phức tạp thời gian của máy Turing có mã ) và đặt .e f ( x , y ) = 2 yΦe(x)ef(x,y)=2y


2
+1: Đây là một liên kết đến bài báo gốc: logic.cse.unt.edu/tarau/teaching/SoftEng/OLD/ conToDiscuss / Lỗi .
Aryabhata
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.