Tại sao chúng ta sử dụng máy Turing băng đơn cho thời gian phức tạp?


18

Như bạn đã biết, có rất nhiều dị thường cho các máy Turing băng đơn khi thời gian là : mô phỏng TM nhiều băng, mô phỏng bảng chữ cái băng lớn hơn chỉ với , khả năng xây dựng thời gian, không chặt chẽ của định lý phân cấp thời gian, ...{ 0 , 1 , b }o(n2){0,1,b}

Ngoài ra, các kết quả như và các mô hình thời gian rất cụ thể cho các vấn đề đơn giản (không chuyển thành các giới hạn siêu tuyến trên cả hai băng TM). O ( n 2DTime(o(nlgn)=RegO(n2)

Đối với độ phức tạp không gian, chúng tôi sử dụng một mô hình trong đó chúng tôi có một băng đầu vào chỉ đọc riêng biệt, tự nhiên và mạnh mẽ hơn.

Một mô hình TM có nhiều băng (hoặc ít nhất 2 băng làm việc) sẽ mạnh mẽ hơn nhiều và sẽ không dẫn đến sự bất thường như những gì tôi đã liệt kê ở trên. Tôi đã từng hỏi một nhà lý thuyết phức tạp nổi bật, người đã chứng minh kết quả mô phỏng trong những năm đầu của lý thuyết phức tạp nếu anh ta biết bất kỳ cải tiến nào về một trong những kết quả cũ này và câu trả lời là anh ta không nghĩ rằng "câu hỏi về một mô hình băng là quan trọng".

Nếu chúng ta thay đổi mô hình chuẩn về độ phức tạp thời gian thành hai băng TM, kết quả hợp lý trong lý thuyết phức tạp sẽ không thay đổi và chúng ta tránh được những bất thường do mô hình cụ thể gây ra. Vì vậy, câu hỏi của tôi là:

Có bất kỳ lý do tại sao độ phức tạp thời gian vẫn được xác định theo các TM băng đơn không? (ngoài lý do lịch sử)


7
Tôi chưa bao giờ thấy độ phức tạp thời gian được xác định bởi các TM băng đơn. Tôi chỉ thấy các lớp phức tạp thời gian mạnh mẽ được xác định bởi các TM băng đơn.

@Ricky, ý tôi là độ phức tạp thời gian của một vấn đề được xác định theo độ phức tạp thời gian của các TM băng đơn có thể giải quyết nó.
Kaveh

và tôi có nghĩa là tôi chưa bao giờ thấy điều đó được thực hiện. Tôi luôn thấy, tối thiểu, truy cập ngẫu nhiên.

7
Nhưng đó có thực sự là định nghĩa thông thường? những gì tôi đã thấy trong sách giáo khoa là: 1) định nghĩa máy Turing băng đơn (vì nó đơn giản hơn); 2) chỉ ra cách mở rộng sang các biến thể khác, đặc biệt là truy cập ngẫu nhiên nhiều băng và ngẫu nhiên; 3) cho thấy rằng tất cả những thứ này có thể mô phỏng lẫn nhau với hầu hết các đa thức chậm lại; 4) ngay lập tức quên đi mô hình cho hầu hết các phần, ít nhất là cho đến khi chúng ta cần những thứ tinh tế hơn như máy tiên tri và giảm logspace; vì vậy, giống như @RickyDemer, tôi sẽ thách thức tuyên bố rằng đây thực sự là định nghĩa thông thường.
Sasho Nikolov

1
Tôi không có câu trả lời cho điều này, nhưng, tôi chỉ muốn chỉ cho bạn tác phẩm này bởi Yamakami ( springerlink.com/content/u844854721p83870 ). Bài viết này thảo luận về những gì xảy ra khi bạn thêm lời khuyên cho một máy nhỏ (ví dụ: TM một băng thời gian tuyến tính). Nó chứng minh một số phân tách lớp, nhưng nó sử dụng các TM một băng này. Những sự tách biệt này sẽ không hoạt động nếu bạn có loại TM khác. Tôi nghĩ rằng đây là một ví dụ hay, nơi bạn có thể chứng minh những điều hay ho bằng một cuộn băng và có lẽ không thể với một mô hình khác. Đạo đức là "vấn đề một băng khi bạn đối phó với những điều tinh tế".
Marcos Villagra

Câu trả lời:


13

Các câu trả lời khác trông rất đẹp. Tôi muốn chia sẻ một bình luận Russell Impagliazzo đã thực hiện nhiều năm trước trong một bài giảng, từ đó đã bị mắc kẹt với tôi kể từ đó.

Tôi nghĩ Turing có thể thích một băng TM đơn lẻ do tính hợp lý của vật lý.

Tôi đã chỉ cho Russell chủ đề này vài ngày trước, nhưng khi thấy anh ấy không ở đây, tôi muốn nhận xét của anh ấy được biết, và sẽ cố hết sức để diễn giải nó.

Đối với một băng TM đơn lẻ, giả sử một cuộn băng có chiều dài vô hạn (vui lòng gắn bó với tôi), bạn có thể xây dựng một TM chỉ cần một lượng năng lượng giới hạn cho mỗi lần lặp. Hãy tưởng tượng băng như một thanh dài và đầu chứa tất cả logic TM, chỉ đơn giản là di chuyển dọc theo thanh này. (Tôi nghĩ về nó như một cỗ máy nhỏ dễ thương, sử dụng công nghệ rất nguyên thủy. Cây gậy có thể có các rãnh để giúp nó đi theo, và nội dung của băng có thể chỉ là một khối trượt trực tiếp vào trục que.)

Mặt khác, làm thế nào để bạn làm điều này cho một -tape TM? Nếu bạn cókkktrong số các mâu thuẫn ở trên, họ phải truyền đạt trạng thái đọc của mình đến các đầu khác có khả năng rất xa, lấy năng lượng không giới hạn (giả sử bạn sử dụng dây dẫn, nhất thiết phải rò rỉ nhiệt), và hơn nữa không phải là tức thời, do đó làm phức tạp cơ chế. Thay vào đó, nếu bạn giữ các đầu lại với nhau và di chuyển các cuộn băng bên dưới chúng, bạn sẽ sử dụng đủ năng lượng để di chuyển các cuộn băng có chiều dài vô hạn .. Tôi không thấy làm thế nào để có được năng lượng giới hạn trong cả hai trường hợp. Các thủ thuật như thu nhỏ gia tăng băng (để có được chiều dài hữu hạn) giả sử một vũ trụ chia hết vô hạn và vi phạm những thứ như hằng số Planck và nguyên tắc ba chiều. Ngay cả khi bỏ qua những điều này, các cơ chế trong đầu phải chính xác một cách tùy tiện, một lần nữa gây ra các vấn đề về năng lượng, và rất phức tạp.

Tất nhiên, sơ đồ đầu tiên có vấn đề: việc xây dựng băng vô hạn với vô số rãnh, vô số mặt trời để cung cấp năng lượng cho các bộ thu năng lượng mặt trời trên đầu di chuyển, nguồn cung cấp vô hạn các vật tư làm sạch và bảo trì, v.v. Có thể một số bước đột phá lớn trong cơ học lượng tử có thể để cho các đầu -tape giao tiếp tốt, nhưng bây giờ hãy xem sự phức tạp của chúng ta phức tạp như thế nào. Trong mọi trường hợp, tôi nghĩ nhận xét của Russell rất, rất thú vị.k


tôi nghĩ rằng Turing đang cố gắng trừu tượng hóa khái niệm "điện toán" và không trừu tượng hóa một mô hình cho một thiết bị vật lý. trong trường hợp đó, một máy Turing băng đơn ghi lại rõ ràng trực giác triết học rằng tính toán liên quan đến truy cập cục bộ vào bộ nhớ lớn (vô hạn)
Sasho Nikolov

Tôi đã mong đợi những lý do lý thuyết (không thể thực hiện được của các mô hình) nhưng tôi thấy câu trả lời này rất thú vị, vì vậy tôi chấp nhận nó. Cảm ơn một lần nữa.
Kaveh

Giữ các đầu băng ở vị trí có vẻ như chúng ta có thể tạo ra tổng số năng lượng loglinear hoặc hy vọng không tệ hơn quasilinear bằng cách chế tạo một hình thức xây dựng của Hennie-Stearns. Tôi đang tưởng tượng các cuộn băng cuộn thành các vòng ngày càng lớn hơn khi chúng mở rộng theo cả hai hướng ... Hoặc tưởng tượng hơn, trên các cuộn băng, 100 băng vào ống chỉ, 100 cuộn đến giá, 100 giá đỡ cho nhà kho, và trên và trên. Tất nhiên đối với năng lượng giới hạn trên mỗi lần lặp, chúng ta sẽ cần tổng năng lượng tuyến tính theo thời gian. Nhưng quasilinear tốt hơn so với bậc hai ngây thơ nên tôi nghĩ tôi sẽ đề cập đến nó.
Dan Brumleve

14

f(n)

Có một lý do sư phạm rõ ràng tại sao Sipser làm điều này, cụ thể là khóa học chỉ tự nhiên chảy theo cách đó bởi vì:

  • Bạn nên giới thiệu máy băng đơn trước máy đa băng, nếu không sẽ làm dốc đường cong học tập.

  • Tốt nhất bạn nên so sánh máy nhiều băng với máy băng đơn vào thời điểm bạn giới thiệu máy nhiều băng, nếu không sự thiếu hiểu biết kéo dài sẽ dẫn đến sự nhầm lẫn thêm.

  • Bạn có thể bỏ qua việc giới thiệu các lớp TIME tương tự cho các máy nhiều băng, do đó đơn giản hóa ký hiệu tổng thể.

Không có lý do để ngụy biện cho sự sạch sẽ về mặt khái niệm khi phương pháp sư phạm rõ ràng chỉ ra con đường dễ nhất, và mọi sinh viên khoa học máy tính phải học khóa tiểu học này, bao gồm tất cả những người vẫn không hiểu bằng chứng.


Không, IIRC, cuộc gặp gỡ đầu tiên của tôi với TM là phiên bản đầu tiên của Hopcroft và Ullman. Nhưng lý do tôi hỏi câu hỏi này thực sự liên quan đến sách giáo khoa hay của Sipser, tôi đã dạy lý thuyết phức tạp dựa trên Sipser và tôi cảm thấy rằng nó sẽ đơn giản và gọn gàng hơn (không mất tài liệu thiết yếu) cho tôi và học sinh nếu nó dựa trên đa -tape TM. Tất cả những chi tiết kỹ thuật nhỏ này về việc truy cập hạn chế các TM băng đơn sẽ bị tránh và tôi có thể bao quát nhiều tài liệu thú vị hơn trong thời gian giới hạn mà tôi có. Sipser thoải mái về việc sử dụng luận án Church-Turing,
Kaveh

Vì vậy, tôi nghĩ rằng được thư giãn về phần này cũng có thể tốt. Trong phần định lý phân cấp thời gian, ông đề cập rằng yếu tố nhật ký bổ sung là không bắt buộc nếu chúng ta có nhiều băng và nó sẽ khá chặt chẽ. Điều này khiến tôi phải hỏi xem liệu có bất kỳ lý do phi lịch sử nào về việc sử dụng TM băng đơn cho độ phức tạp thời gian không. Không có gì tệ hơn là sử dụng một băng chỉ đọc riêng biệt cho độ phức tạp của không gian (và một lần nữa chủ yếu là do một băng TM đơn lẻ không nắm bắt được trực giác về các lớp phức tạp không gian nhỏ một cách độc đáo).
Kaveh

2
Tôi không thấy người ta thậm chí có ý nghĩa như thế nào về giới hạn không gian tuyến tính mà không có một băng đầu vào riêng biệt.

Có, tôi cho rằng SPACE được thực hiện khác đi, một phần vì bạn sẽ thực hiện các giới hạn tuyến tính, điều mà bạn có thể sẽ không có trong TIME. Tôi sẽ tranh luận về việc đăng ký TIME hoặc làm bất cứ điều gì Sipser làm cho SPACE nếu bạn muốn làm theo cách này, chắc chắn tôi muốn nói về TIME hoặc TIME_1 hoặc bất cứ điều gì trước máy nhiều băng.
Jeff Burdges

1
Thật thú vị, Sipser chỉ nói "Máy Turing" khi xác định SPACE (f (n)) nhưng sau đó thay đổi định nghĩa khi thảo luận về các hàm tuyến tính f, gán một bài tập về tính tương đương cho siêu máy bay f. Tôi đã dạy tài liệu này từ Sipser trước đây. Tôi đã không nghĩ quá nhiều về nó vào thời điểm đó, nhưng tôi hài lòng về nó bây giờ.
Jeff Burdges

7

Máy Turing ban đầu được mô tả bằng một băng duy nhất:

www.cs.ox.ac.uk/activities/ieg/e-l Library / source / tp2 -ie.pdf

Vì vậy, khi bạn nêu trong câu hỏi của bạn, điều này chủ yếu là vì lý do lịch sử. Hơn nữa, luôn có xu hướng hỏi mô hình đơn giản nhất có thể làm gì ...

Ngoài ra, vì chủ đề này thường được dạy rất chính thức, nên việc mô tả một máy băng đơn dễ hơn về mặt kỹ thuật so với máy hai băng.

Xem thêm:

http://www.cs.utah.edu/~draperg/cartoons/2005/turing.html

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.