Biện minh cho log f trong định lý phân cấp DTIME


30

Nếu chúng ta xem xét định lý phân cấp DTIME, chúng ta đã có một bản ghi do chi phí mô phỏng của Máy Turing xác định bằng một máy phổ quát:

DTIME(flogf)DTIME(f)

Chúng tôi chưa có loại chi phí này cho NTIME của DSPACE. Một lời biện minh cơ bản đến từ các chi tiết của bằng chứng bằng cách xem xét sự khác biệt giữa các trình giả lập.

Câu hỏi của tôi là như sau: không xem xét chi tiết về bằng chứng của định lý phân cấp DTIME, liệu có sự biện minh cho nhật ký này hay nó có thể chỉ là hệ quả của bằng chứng và sẽ hợp lý khi tưởng tượng rằng nếu sau đóf=o(g)

DTIME(f)DTIME(g)

Theo tôi, xem xét rằng giải thích mô phỏng là một biện minh tốt nên được chứng minh bằng cách chứng minh rằng nếu chúng ta có kết quả tốt hơn, thì chúng ta có thể tạo ra một mô phỏng tốt hơn.


5
Tôi nghĩ rằng những gì bạn đã viết trong đoạn cuối ít có khả năng hơn so với đối diện của nó. Cụ thể, tôi không nghĩ rằng hiện tại chúng ta có thể loại trừ khả năng một tuyên bố mạnh mẽ hơn có thể được chứng minh bằng một phương pháp khác ngoài mô phỏng. Mặt khác, chúng ta có thể loại trừ khả năng một tuyên bố mạnh mẽ hơn có thể được chứng minh bằng cách mô phỏng bằng cách xây dựng một thế giới tương đối hóa nơi tuyên bố mạnh mẽ hơn thất bại.
Tsuyoshi Ito

Theo tôi hiểu, việc giảm chi phí mô phỏng trong định lý phân cấp thời gian xác định sẽ là một kết quả đột phá. Đối với một điều, một số kết quả có thể được tăng cường ngay lập tức. Ω(logn)
András Salamon

4
Điều này hơi mang tính mô phạm, nhưng trừ khi bạn có thêm các hạn chế đối với f và g (tiêu chuẩn sẽ là f và g có thể xây dựng được theo thời gian), tồn tại f và g sao cho f = o (g) và DTIME (f) = DTIME (g). Để thấy điều này, chỉ cần xem xét tập hợp không thể đếm được của tất cả các hàm x ^ i, với i real, 0 <i <= 1. Nếu Định lý phân cấp thời gian là đúng với tất cả các cặp hàm như vậy, thì chúng ta sẽ có được một tập hợp không thể đếm được ngôn ngữ, tất cả có thể quyết định bằng máy Turing. Điều này mâu thuẫn với thực tế là bộ máy Turing có thể đếm được.
Abel Molina

1
@abel Tôi giả sử tất nhiên rằng f và g có thể xây dựng được theo thời gian, giống như trong định lý phân cấp thời gian hiện tại.
Ludovic Patey

vâng, có một sự biện minh khi xem xét bằng chứng hiện tại, nhưng một câu trả lời đầy đủ cho vấn đề / câu hỏi này sẽ chứng minh sự cần thiết của nó và không chỉ đơn thuần là đủ. tức là như AS nhận xét ở trên, ràng buộc chặt chẽ hơn là một vấn đề mở. trong hopcroft / ullman 1976, họ chỉ ra yếu tố log (n) là do giảm TM đa nhiệm thành TM 2 băng và cũng có bằng chứng liên quan cho việc giảm đó. (cùng với câu hỏi này, tuy nhiên, luôn tự hỏi rằng các thms phân cấp trông khác nhau như thế nào đối với một lý thuyết phức tạp dựa trên các TM băng đơn thay vì một TM cho phép nhiều TM. Có vẻ như liên quan đến câu hỏi này)
vzn

Câu trả lời:


5

Định lý phân cấp thời gian là chủ đề của dự án văn bằng của tôi, có lẽ bạn muốn xem các bình luận về câu hỏi của tôi Giới hạn dưới và tách lớp .

Nhìn lại câu hỏi này và nó liên quan đến những gì bạn đang hỏi như thế nào, tôi có một ý tưởng có thể cho thấy rằng phần đa mô phỏng trên một băng mô phỏng TM đơn lẻ cần bằng chứng của định lý không thể được cải thiện. Vì vậy, một cách tiếp cận khác là cần thiết nếu chúng tôi muốn cải thiện kết quả này.

EDIT: Bằng chứng này là không chính xác, xem các ý kiến ​​dưới đây để biết lý do chính xác. Tôi hiện đang chỉnh sửa câu trả lời để phản ánh điều đó.

Đặt là ngôn ngữ .{ 0 k 1 k | k 0 }A{0k1k|k0}

Trên một máy băng đơn, có thuật toán (bạn có thể tìm thấy chi tiết về thuật toán này trong chương 7.1.2 của cuốn sách "Giới thiệu về lý thuyết tính toán" của Sipser. rằng một ngôn ngữ nằm trong o (n \ log n) nếu và chỉ khi nó là thông thường. Kaveh cũng cung cấp các giấy tờ gốc cho khiếu nại này trong câu hỏi được liên kết ở trên.O(nlogn)

Trong các bình luận về câu hỏi của tôi, Ryan Williams minh họa thuật toán cho cùng một vấn đề, sử dụng TM 2 băng.O(n)

Giả sử bây giờ có một kỹ thuật mô phỏng TM đa hình thành một băng TM đơn có thời gian chạy là , trong đó là thời gian chạy của TM được mô phỏng . Bằng cách áp dụng nó vào máy Ryan minh họa, chúng ta sẽ có được một băng TM duy nhất chạy trong . Do đó, là thường xuyên, đó là một mâu thuẫn. Vì vậy, chúng tôi kết luận rằng chi phí của là cách tốt nhất chúng tôi có thể làm khi mô phỏng nhiều máy băng với các máy băng đơn.T ( n ) o ( n log n ) Một log T ( n )o(T(n)logT(n))T(n)o(nlogn)AlogT(n)

Tôi nhận ra đây là một tuyên bố mạnh mẽ, vì vậy tôi có thể sai trong cách giải thích của tôi.

Ngay cả khi một kỹ thuật tồn tại cho phép cải thiện kết quả này, tôi tin rằng không thể phù hợp với kết quả cho hoặc . Trực giác của tôi xuất phát từ thực tế sau đây:S P A C ENTIMESPACE

Có một kết quả rất nổi tiếng là tuyên bố . Theo giả định rằng tôi tin rằng kết quả này được cải thiện thành , đối với mọi . Vì vậy, một lớp không xác định rất nhỏ mạnh hơn bất kỳ định thức nào . Vì vậy, với thời gian không xác định tài nguyên mạnh mẽ như thế nào, tôi hy vọng rằng sẽ cần một lượng thời gian xác định lớn hơn để làm cho một TM mạnh hơn để bù cho sức mạnh không xác định.P N P D T I M E ( n k ) N T I M E ( n ) kDTIME(n)NTIME(n)PNPDTIME(nk)NTIME(n)k


9
Phải mất thời gian bậc hai để mô phỏng máy Turing nhiều băng trên máy băng đơn. Ngôn ngữ của palindromes cho thấy điều này là cần thiết: palindromes có thể được nhận ra trong thời gian trên máy hai băng, nhưng phải mất thời gian Ω ( n 2 ) trên máy băng đơnO(n)Ω(n2)
Luca Trevisan

Luca tất nhiên là đúng (tôi mong đợi một sai lầm do sức mạnh của tuyên bố). Lỗi của tôi: Tôi vội vàng nhầm lẫn băng đơn TM tiêu chuẩn với băng công việc đơn (với băng đầu vào không ghi khác nhau và có lẽ là băng đầu ra riêng biệt). Khi tôi nhận ra sai lầm, tôi đã thử xem liệu tính đều đặn của có mang theo mô hình đó không, nhưng P A L I N D R O M E S cho thấy điều đó không đúng. Tôi đang chỉnh sửa câu trả lời để phản ánh sự thật này, tôi hy vọng người hỏi @Monoid chấp nhận nó cho phần trực giác. o(nlogn)PALINDROMES
chazisop

Ví dụ Luca đề cập là trong trường hợp thời gian là . Trường hợp cụ thể này nói chung là rắc rối vì hành vi không mạnh mẽ của máy băng đơn trong các lớp nhỏ như vậy. Vì vậy, nó không phải là một trở ngại nếu thời gian là Ω ( n 2 ) . Điều thú vị là bằng chứng về phiên bản mạnh mẽ của định lý phân cấp cho o ( n 2 ) không sử dụng mô phỏng mà là một đối số trực tiếp (xem Hartmanis 1968). o(n2)Ω(n2)o(n2)
Kaveh

8

Đối với các TM băng n, kết quả phân cấp thời gian chặt chẽ tương tự như định lý phân cấp không gian được Furer chứng minh vào năm 1982. Không cần hệ số .lg

Các yếu tố cho định lý thời gian hệ thống phân cấp được nêu trong bài viết của bạn chỉ dành cho bộ nhớ dịch đơn băng. Trừ khi bạn rất cam kết với mô hình băng đơn vì một số lý do, không có sự khác biệt giữa không gian và thời gian liên quan đến các định lý phân cấp.lg

Có một số lý do và lý lẽ cho việc sử dụng TM băng đơn để xác định các lớp phức tạp thời gian, nhưng việc sử dụng TM băng đơn để xác định các lớp phức tạp là không phổ biến, ví dụ: xem Lance Fortnow và Rahul Santhanam [2007] trong đó họ sử dụng nhiều băng TM.

Tài liệu tham khảo ban đầu cho định lý phân cấp thời gian là Hennie và Stearns [1966]. Họ chứng minh định lý cho máy hai băng. Lý thuyết đệ quy cổ điển của Odifreddi trích dẫn họ và Hartmanis [1968] và mô tả một bằng chứng trông giống như trong cuốn sách của Sipser.

Tuy nhiên, bằng chứng cho các TM băng đơn trong bài báo của Hartmanis không sử dụng mô phỏng đơn giản. Nó phân biệt giữa hai trường hợp: 1. thời gian chạy là và 2. thời gian chạy là o ( n 2 ) .Ω(n2)o(n2)

  1. Đối với trường hợp đầu tiên, nó sử dụng một mô phỏng, và dường như người ta có thể thoát khỏi yếu tố nếu việc mô phỏng có thể được thực hiện hiệu quả hơn.lg

  2. Đối với trường hợp thứ hai, bài báo trực tiếp đưa ra một ngôn ngữ để phân tách và hoàn toàn không sử dụng mô phỏng. Điều này sử dụng các thuộc tính cụ thể của các TM băng đơn với thời gian chạy bậc hai.

Mọi người nên lưu ý rằng các TM băng đơn có thời gian không mạnh bằng và có các giới hạn bậc hai (ví dụ đối với Palindrom) trên các TM băng đơn trong khi TM hai băng có thể giải quyết các vấn đề như vậy trong thời gian tuyến tính.o(n2)

Như tôi đã nói ở trên, trừ khi bạn cam kết mô hình TM băng đơn vì một số lý do, ngay cả khi thời gian là bậc hai, không có khoảng trống để lấp đầy, định lý phân cấp thời gian càng chặt chẽ càng tốt.

PS: nếu chúng tôi đang sử dụng nhiều băng TM, tức là máy Turing trong lớp có thể có số lượng băng cố định nhưng tùy ý kết quả của Fürer không áp dụng.

  1. Martin Fürer, " Hệ thống phân cấp thời gian xác định chặt chẽ ", 1982
  2. Piergiorgio Odifreddi, "Lý thuyết đệ quy cổ điển", tập. II, 1999 (trang 84)
  3. Juris Hartmanis, "Độ phức tạp tính toán của các tính toán máy Turing một băng ", năm 1968
  4. FC Hennie và RE Stearns, " Mô phỏng hai băng của máy Turing đa nhiệm ", 1966
  5. Bài viết " Phân cấp thời gian: Khảo sát " của Lance Fortnow và Rahul Santhanam , 2007

4
Không phải kết quả của Fürer chỉ áp dụng cho trường hợp khi số lượng băng của máy Turing đang được xem xét là cố định, tức là, nói về các lớp , k là số lượng băng. DTIMEk(f)k
Markus Bläser

@Markus, vâng, đúng vậy, nó tương tự như trường hợp băng đơn. Sự khác biệt duy nhất là số lượng băng nhiều hơn một, nhưng nó vẫn cố định, ví dụ 2 băng.
Kaveh

Xem thêm Krzysztof Loryś, " Kết quả phân cấp thời gian mới cho các TM xác định ", 1992. Một tài liệu tham khảo khác là Kazuo Iwama, Chuzo Iwamoto, " Cải thiện hệ thống phân cấp thời gian và không gian của các TM ngoại tuyến một băng ", 1998, giúp cải thiện hệ số log đăng nhập nhật ký cho các TM băng đơn.
Kaveh

5

Đối với một số cố định của băng lớn hơn một, ) cho thời gian constructible f . Chi phí logarit xuất phát từ định lý giảm băng, trong đó bất kỳ số lượng băng có thể được chuyển đổi thành hai băng (hoặc thậm chí chỉ là một băng duy nhất và một chồng và chỉ với chuyển động không biết).Time(o(f))Time(O(f)f

Nếu số lượng băng chưa được khắc phục, chúng tôi không thực sự có một kỹ thuật để tính xây dựng chứng minh mà không đi qua các định lý giảm băng. Điều hợp lý là với mọi máy k , k + 1 -tape không thể được mô phỏng bằng máy k -tape mà không có chi phí logarit.DTime(g)DTime(f)kk+1k

Tuy nhiên, điều đó không có nghĩa là hệ thống phân cấp thời gian lý không thể được cải thiện, hoặc thất bại.DTime(o(f))DTime(O(f))

Trong thực tế, chúng tôi đã có sau đây.

Định lý: Đối với mỗi và mỗi f có dạng n một ( log n ) b ( mộtb hợp lý; một > 1 hoặc một = 1 b 0 ), D T i m đ ( O ( f / ( log f ) ε ) D T i m đ ( Oε>0fna(logn)baba>1a=1b0 .DTime(O(f/(logf)ε)DTime(O(f))

Chứng minh: Nếu mọi ngôn ngữ với một thuật toán quyết định có thể được quyết định trong O ( f / ( log f ) ε ) thời gian, sau đó bằng cách đệm đầu vào, mọi ngôn ngữ với một O ( f ( n ) ( log f ( n ) ) thuật toán quyết định k ε ) có thể được quyết định trong O ( f ( n )O(f)O(f/(logf)ε)O(f(n)(logf(n))kε) thời gian (trong đó k 0 là cố định), và vì vậy với mọi hằng số c 0 , D T i m e ( O ( f ( n ) ( log f ( n) ) ) c ) ) = D T i m e ( O ( f ( n ( n ( n)O(f(n)(logf(n))(k1)ε)k0c0 , mâu thuẫn với định lý phân cấp thời gian.DTime(O(f(n)(logf(n))c))=DTime(O(f(n)))

Tuy nhiên, bằng chứng phi cấu trúc này có ba hạn chế:
* Bằng chứng yêu cầu phải cư xử tốt (không chỉ có thể xây dựng theo thời gian, mà còn theo một nghĩa nào đó liên tục). * Chúng tôi không biết một ngôn ngữ cụ thể mà là ở D T i m đ ( O ( f ) ) nhưng không có trong D T i m đ ( O ( f / ( log f ) ε ) . Đối với một đủ lớn k , mô phỏng k -tape Máy Turing không ở Df
DTime(O(f))DTime(O(f/(logf)ε)kk , nhưng chúng tôi đã không loại trừ khả năng rằng ngay cả đối với ε = 1 f ( n ) = n 2 , ít nhất là như vậy k là> BB (BB (1000)) nơi BB là hàm hải ly bận rộn. * Chúng tôi không biết rằng sự bao gồm là mạnh mẽ. Một D T i m đ ( O ( f / ( log f ) ε )DTime(O(f/(logf)ε)ε=1f(n)=n2k
DTime(O(f/(logf)ε) thuật toán sẽ thất bại đối với một số đầu vào, nhưng chúng tôi đã không chứng minh rằng nó thất bại đối với một số đầu vào cho tất cả nhưng rất nhiều kích cỡ đầu vào (mặc dù nó sẽ rất đáng ngạc nhiên nếu không).


Câu trả lời tuyệt vời !! :)
Michael Wehar
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.