Định nghĩa tương đương về thời gian xây dựng


13

Chúng ta nói rằng một hàm f:NN có thể xây dựng được theo thời gian , nếu tồn tại một máy Turing đa băng xác định mà trên tất cả các đầu vào có độ dài tạo ra tối đa các bước và cho mỗi tồn tại một số đầu vào của độ dài trên đó thực hiện các bước exacltly .Mf ( n ) n n M f ( n )nf(n)nnMf(n)

Chúng ta nói rằng một hàm là đầy đủ thời gian constructible , nếu có tồn tại một xác định đa băng Turing máy mà trên tất cả các đầu vào có độ dài làm cho chính xác bước .f:NNn f ( n )Mnf(n)

Câu 1: Có tồn tại một hàm có thể xây dựng theo thời gian và không hoàn toàn có thể xây dựng được không?

Câu trả lời là có (xem câu trả lời này ), nếu . Điều kiện cho "có" có thể được tăng cường cho không? "Có" có thể được chứng minh?P N PEXPTIMENEXPTIMEPNP

Câu 2: Lớp các hàm (thời gian hoàn toàn) có thể thay đổi nếu chúng ta chỉ cho phép các máy Turing 2 băng trong định nghĩa không?

Câu 3: Những lý do "có thể chứng minh" để tin rằng tất cả các chức năng tốt đều có thể xây dựng được theo thời gian?

Bài báo
Kojiro Kobayashi: Về việc chứng minh khả năng xây dựng thời gian của các chức năng. Lý thuyết. Tính toán. Khoa học. 35: 215-225 (1985)
trả lời một phần Câu 3. Tóm tắt một phần và nâng cấp của nó là trong câu trả lời này . Tôi lấy câu 3 như đã trả lời.

Trong lịch sử, khái niệm hàm đếm thời gian thực được sử dụng thay vì (hoàn toàn) có thể xây dựng theo thời gian. Xem câu hỏi này để biết thêm.


Tò mò - bạn có thể chỉ cho tôi một tài liệu tham khảo cho các định nghĩa này không? Tôi không quen thuộc với các hàm có thể xây dựng được và tôi không thể tìm thấy các định nghĩa này trực tuyến (tôi cũng không rõ liệu chúng có tương đương với các ví dụ của wikipedia không).
sử dụng

@usul Tài liệu tham khảo là: JE Hopcroft, JD Ullman. Giới thiệu về lý thuyết automata, ngôn ngữ và tính toán. Dòng Addison-Wesley trong Khoa học máy tính, 1979 Định nghĩa tương tự có thể được tìm thấy ở đây: cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fivese2.html
David G

Câu trả lời:


5

Trong vài ngày qua tôi đã nghĩ rất nhiều về (đầy đủ) các hàm có thể xây dựng được và tôi sẽ trình bày những gì tôi đã tìm ra bằng cách trả lời Q1 và Q3. Quý 2 dường như quá khó khăn.

Quý 3:

Kobayashi trong bài viết của mình (tham chiếu là trong câu hỏi) đã chứng minh rằng một hàm , mà có tồn tại một ε > 0 st f ( n ) ( 1 + ε ) n , là hoàn toàn thời gian constructible iff nó là tính toán trong thời gian O ( f ( n ) ) . (lưu ý rằng không liên quan cho dù đầu vào hoặc đầu ra là đơn nhất / nhị phân vì chúng ta có thể chuyển đổi giữa hai biểu diễn này trong thời gian tuyến tính). Điều này làm cho các chức năng sau có thể xây dựng hoàn toàn theo thời gian: 2 n ,f:NNϵ>0f(n)(1+ϵ)nO(f(n))2n , n ! , N log n , tất cả các đa thức p trên N st p ( n ) ( 1 + ε ) n ... Kobayashi cũng chứng minh đầy đủ thời gian thi trong thi công đối với một số chức năng mà phát triển chậm hơn so với ( 1 + ε ) n , như n + log n q cho q Q + ...22nn!nlognpNp(n)(1+ε)n(1+ϵ)nn+lognqqQ+

Để tiếp tục với các ví dụ về các hàm có thể xây dựng hoàn toàn theo thời gian, người ta có thể chứng minh rằng nếu f 2 hoàn toàn có thể xây dựng được thời gian, thì f 1 + f 2 , f 1 f 2 , f f 2 1f 1f 2 là cũng hoàn toàn có thể xây dựng được thời gian (phần sau theo trực tiếp từ Định lý 3.1 trong Kobayashi). Điều này hoàn toàn thuyết phục tôi rằng nhiều chức năng tốt thực sự hoàn toàn có thể xây dựng được theo thời gian.f1f2f1+f2f1f2f1f2f1f2

Điều ngạc nhiên là Kobayashi đã không nhìn thấy một cách để chứng minh đầy đủ thời gian thi trong thi công của (thoải mái) chức năng (và không phải làm I).nlogn

Chúng ta cũng nhận xét định nghĩa từ bài viết Wikipedia : Hàm có thể xây dựng theo thời gian, nếu tồn tại máy Turing M , với chuỗi 1 n , xuất ra f ( n ) trong thời gian O ( f ( n ) ) . fM1nf(n)O(f(n)) Chúng ta thấy rằng định nghĩa này là equivallent định nghĩa của chúng tôi hoàn toàn thời gian thi trong thi công cho các chức năng .f(n)(1+ϵ)n

Q1:

Câu hỏi này có một câu trả lời thực sự thú vị. Tôi cho rằng nếu tất cả các chức năng thời gian constructible hoàn toàn thời gian constructible, sau đó . Để chứng minh rằng, chúng ta hãy lấy một vấn đề tùy ý L N E X P - T Tôi M E , L { 0 , 1 } * . Khi đó tồn tại một k N , st LEXPTIME=NEXPTIMELNEXPTIMEL{0,1}kNLcó thể được giải quyết bằng NDTM trong 2 n k - 1 bước. Chúng ta có thể giả sử rằng ở mỗi bước M đi vào tối đa hai trạng thái khác nhau để đơn giản. Bây giờ xác định chức năng f ( n ) = { 8 n + 2 nếu  ( đầu tiên k M2nk1M

f(n)={8n+2if (first logn+1k bits of bin(n))L8n+1else

Tôi khẳng định rằng là thời gian xây dựng. Hãy xem xét các máy Turing xác định sau T :fT

  • trên đầu vào có độ dài n nó tính ( đầu tiên k wntrongO(n)thời gian(first logn+1k bits of bin(n))O(n)
  • sau đó nó mô phỏng trên các bit này, trong đó các bit của w xác định lựa chọn nào (trước đây là không xác định).Mw
  • chấp nhận iff .(M accepts using choices given by w)

Lưu ý rằng chiều dài của ( = n ) là đủ mà nó quyết định tất cả các lựa chọn không xác định, kể từ M trên đầu vào ( đầu tiên k w=nMlàm cho nhiều nhất lànbước.(first logn+1k bits of bin(n))n

Chúng ta có thể làm cho chạy trong tối đa 8 n + 1 bước. Bây giờ máy Turing sau đây chứng minh rằng f có thể xây dựng được theo thời gian:T8n+1f

  • trên đầu vào có độ dài n chạy T và đếm các bước song song để hoàn thành 8 n bước.wnT8n
  • nếu từ chối hoặc sẽ từ chối trong bước tiếp theo, hãy chuyển sang trạng thái tạm dừng ở bước tiếp theo. Khác, làm thêm một bước và sau đó đi đến trạng thái dừng lại.T

Bây giờ giả sử rằng hoàn toàn có thể xây dựng được. Chúng tôi sẽ chứng minh rằng điều này dẫn đến E X P - T Tôi M E = N E X P - T Tôi M E .fEXPTIME=NEXPTIME

Thuật toán sau giải quyết :L

  • trên đầu vào , hãy n là số với biểu diễn nhị phân x 00 ... 0 ( | x | k - 1 số không). Nó sau đó x = ( đầu tiên k xnx000|x|k1.x=(first logn+1k bits of bin(n))
  • tính trong thời gian f ( n ) và kiểm tra xem nó có chia hết cho 2 không.f(n)f(n)

Thuật toán này chạy trong mũ thời gian và giải quyết . Kể từ khi L N E X P - T Tôi M E là tùy ý, E X P - T Tôi M E = N E X P - T Tôi M E .LLNEXPTIMEEXPTIME=NEXPTIME


4
Rất đẹp! [đệm để làm cho hộp bình luận hạnh phúc]
Emil Jeřábek hỗ trợ Monica

1
Một ý tưởng rất giống với ý tưởng được trình bày trong câu trả lời cho câu hỏi Q1 cũng được sử dụng ở đây .
David G
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.