Máy Turing băng đơn có đầu vào được bảo vệ chống ghi chỉ nhận ra Ngôn ngữ thông thường


12

Đây là vấn đề:

Chứng minh rằng các máy Turing băng đơn không thể ghi trên phần băng chứa chuỗi đầu vào chỉ nhận ra các ngôn ngữ thông thường.

Ý tưởng của tôi là chứng minh rằng TM cụ thể này tương đương với DFA.

Sử dụng TM này để mô phỏng DFA rất đơn giản.

Tuy nhiên, khi tôi muốn sử dụng DFA này để mô phỏng TM, tôi gặp phải vấn đề. Đối với TM chuyển δ(q,a)=(q,a,R) , DFA có thể mô phỏng chắc chắn bằng cách đọc băng sang bên phải và làm quá trình chuyển đổi tương tự nhà nước.

Đối với , tôi không thể tìm ra cách sử dụng DFA hoặc NFA này để mô phỏng di chuyển bên trái vì DFA chỉ đọc sang trái và không có ngăn xếp hoặc thứ gì đó để lưu trữ.δ(q,a)=(q,a,L)

Tôi có nên xem xét một cách khác? Bất cứ ai có thể cho tôi một số gợi ý? Cảm ơn.


2
Trước tiên, bạn nên cẩn thận về logic / ý nghĩa của câu. Tiêu đề của bạn ngụ ý rằng bạn chỉ phải chứng minh rằng bất kỳ ngôn ngữ nào được máy Turing xxx nhận ra là thường xuyên. Bạn không cần phải chứng minh điều ngược lại: rằng bất kỳ ngôn ngữ thông thường nào cũng được nhận ra bởi một máy như vậy (mặc dù điều đó là hiển nhiên). Vì vậy, đoạn thứ 4 "Sử dụng ..." của bạn không liên quan đến câu hỏi như đã nêu. Sau đó, trong phần năm, bạn sử dụng "DFA này", dường như đề cập đến DFA của đoạn trước, điều này không còn liên quan gì đến vấn đề trong tay. Bạn có một TM và phải tìm một DFA chưa được biết.
babou

3
Một gợi ý: Bạn có thể muốn tìm kiếm khái niệm "trình tự chéo". Ngoài ra, bạn có thể muốn chứng minh rằng nó tương đương với NFA (với bộ trạng thái lớn hơn). Khi khởi động, hãy tưởng tượng rằng đầu của TM đi đúng 10 bước, sau đó rời 3 bước, sau đó luôn luôn đúng - bạn có thể xây dựng một NFA để mô phỏng tập hợp các đầu vào có thể được nhận ra bởi một TM như vậy dọc theo một đầu như vậy phong trào?
DW

1
@babou Cho phép viết bên ngoài khu vực đầu vào không cho tất cả RE trong quan điểm của tôi. Điều này là do tôi chưa tìm được cách xây dựng chức năng chuyển đổi cho phép sao chép đầu vào vào vùng trống bên ngoài vùng nhập ban đầu. Nếu điều đó có thể thực hiện mà không cần ghi EVER vào vùng nhập ban đầu, thì rõ ràng người ta có thể làm việc ở phía bên phải của đầu vào giống như một TM thông thường cung cấp cho chúng ta tất cả các ngôn ngữ RE.
Được thông báo

1
@DW Tôi không hiểu "chính các chuỗi" sẽ giải quyết vấn đề này như thế nào. Trên thực tế, tôi không sử dụng chúng trực tiếp mà chỉ sử dụng tính tương đương của 2NFA và NFA, nhưng sự tương đương này chỉ là một phần của bằng chứng. BTW, vì bạn dường như biết vấn đề, bạn sẽ biết nó đến từ đâu, vì tôi không thể tìm thấy tài liệu tham khảo trên Internet. Kết quả thực sự làm tôi ngạc nhiên, và tôi tự hỏi tại sao nó dường như không khiến ai quan tâm.
babou

1
@DW Bạn có nghĩ rằng đây là một sự thử lại về sự tương đương của FSA tiêu chuẩn và FSA 2 chiều, hoặc bạn có biết nguồn gốc của vấn đề này: TM không ghi vào đầu vào của họ . Tôi tự hỏi tại sao không ai trả lời nó trong 9 tháng, và tại sao nó được hỏi bởi một sinh viên mới làm quen.
babou

Câu trả lời:


11

Giới thiệu

Tôi nghĩ rằng có thể có một lỗi trong tuyên bố ban đầu của câu hỏi và OP không còn ở đó để hỏi nữa. Vì vậy, tôi cho rằng băng chỉ đọc ở mọi nơi và đã viết một bằng chứng đầu tiên dựa trên giả định đó, được thúc đẩy bởi thực tế là TM có toàn bộ sức mạnh Turing bên ngoài phần đầu vào của băng nếu nó có thể ghi nó, điều đó gây ra sai niềm tin rằng nó có thể nhận ra bất kỳ ngôn ngữ RE.

Tuy nhiên, đó không phải là trường hợp: hạn chế ghi trên phần đầu vào của băng ngụ ý rằng chỉ có thể trích xuất thông tin hữu hạn từ đầu vào, bị giới hạn bởi số lượng trạng thái vào và ra của phần băng đó (kết hợp với bên nhập cảnh và xuất cảnh). InstructedA được ghi nhận khi nhận xét trong một nhận xét rằng có vấn đề với việc nhận ra bất kỳ ngôn ngữ RE nào, vì không thể tạo một bản sao của đầu vào mà không ghi EVER vào khu vực đầu vào ban đầu,

Do đó tôi đã viết một bằng chứng thứ hai cho rằng chỉ phần đầu vào của băng là chỉ đọc, phần còn lại là đọc-ghi cho phép.

Tôi đang giữ cả hai bằng chứng ở đây, vì lần đầu tiên đã giúp tôi tìm ra giải pháp, mặc dù không cần thiết phải hiểu bằng chứng thứ hai, phức tạp hơn và được chứng minh bằng chứng minh thứ hai. Nó có thể được bỏ qua. Tuy nhiên, bằng chứng yếu hơn có lợi thế là mang tính xây dựng (để có được một FSA tương đương với Máy Turing), trong khi kết quả chung hơn là không mang tính xây dựng.

Tuy nhiên tôi đang đưa ra kết quả cuối cùng và mạnh mẽ hơn. Tôi hơi ngạc nhiên rằng tôi không thể tìm thấy kết quả này, ngay cả khi không có bằng chứng, ở nơi nào khác trên mạng hoặc bằng cách hỏi một số người dùng có thẩm quyền, và bất kỳ tài liệu tham khảo nào cho công việc được công bố sẽ được hoan nghênh.

Nội dung:

  • Các máy Turing không ghi đè đầu vào chỉ chấp nhận các ngôn ngữ thông thường. Bằng chứng này không mang tính xây dựng.

  • Máy Turing với băng chỉ đọc chỉ chấp nhận ngôn ngữ thông thường. Nó có thể được bỏ qua dưới dạng bằng chứng trước đó, nhưng nó sử dụng một cách tiếp cận khác, có lợi thế là mang tính xây dựng.

Các máy Turing không ghi đè đầu vào chỉ chấp nhận các ngôn ngữ thông thường

Chúng tôi nhớ lại rằng, trong khi TM không ghi đè lên đầu vào của nó và do đó chỉ đọc trên đầu vào của nó, TM có thể đọc và ghi trên phần còn lại của băng . Bằng chứng dựa trên thực tế rằng hành vi quan sát của TM đối với đầu vào không xác định chỉ có thể tạo ra một số lượng hữu hạn các trường hợp khác nhau. Do đó, mặc dù TM có quyền lực Turing đầy đủ chỉ bằng cách dựa vào phần còn lại của băng của nó, thông tin của mình vào đầu vào, có thể là bất kỳ chuỗi trong , là hữu hạn, vì vậy nó có thể tính toán chỉ trên một số hữu hạn các trường hợp khác nhau. Điều này mang đến một cái nhìn khác về tính chất hữu hạn của các ngôn ngữ thông thường, hành vi hơn là cấu trúc.Σ*

Chúng tôi giả định rằng TM chấp nhận khi nó đi vào trạng thái chấp nhận.

Bằng chứng.

Chúng tôi định nghĩa một tính toán bị hạn chế đầu vào (IRC) là một tính toán ( chỉ đọc) của TM sao cho đầu TM nằm trên phần đầu vào của băng, ngoại trừ khả năng chuyển đổi cuối cùng có thể di chuyển nó đến một ô ngay lập tức bên trái hoặc bên phải của khu vực đầu vào.

Một tính toán hạn chế đầu vào bên trái là một IRC bắt đầu từ biểu tượng ngoài cùng bên trái của đầu vào. Một tính toán hạn chế đầu vào bên phải là một IRC bắt đầu bằng biểu tượng ngoài cùng bên phải của đầu vào.

Trước tiên, chúng tôi chứng minh rằng, đối với các tính toán bị hạn chế đầu vào bên trái bắt đầu ở trạng thái , các ngôn ngữ sau là thông thường:p

  • ngôn ngữ của các chuỗi đầu vào sao cho có một tính toán hạn chế đầu vào bên trái, bắt đầu ở trạng thái p , kết thúc ở ô đầu tiên bên trái của ký hiệu đầu vào ngoài cùng bên trái ở trạng thái q ;KLpLqpq

  • ngôn ngữ của các chuỗi đầu vào sao cho có một tính toán hạn chế đầu vào bên trái, bắt đầu ở trạng thái p , kết thúc ở ô đầu tiên bên phải của biểu tượng đầu vào ngoài cùng bên phải ở trạng thái q ;KLpRqpq

  • ngôn ngữ của các chuỗi đầu vào sao cho có một tính toán bị hạn chế đầu vào bên trái, bắt đầu ở trạng thái p , đạt đến trạng thái chấp nhận.MộtLpp

Và tương tự, đối với các tính toán hạn chế đầu vào bên phải bắt đầu ở trạng thái , các ngôn ngữ được xác định tương tự sau đây là thường xuyên: K R p L q , K R p R qA R p .pKRpLqKRpRqMộtRp

6 bằng chứng dựa trên thực tế là automata trạng thái hữu hạn hai chiều không xác định (2NFA) nhận ra các bộ thông thường (xem Hopcroft + Ullman 1979, trang 36-41 và thực hiện 2.18 trang 51). 2NFA hoạt động giống như một TM chỉ đọc trên băng giới hạn ở đầu vào của nó, bắt đầu ban đầu từ biểu tượng ngoài cùng bên trái và chấp nhận bằng cách di chuyển ra khỏi đầu bên phải ở trạng thái chấp nhận.

Trong mỗi 6 trường hợp, bằng chứng được thực hiện bằng cách xây dựng 2NFA bắt chước các tính toán bị hạn chế đầu vào, nhưng với một số chuyển đổi bổ sung để đảm bảo nó có thể bắt đầu từ ô ngoài cùng bên trái và chấp nhận ngôn ngữ bằng cách thoát khỏi đầu ngoài cùng bên phải trong việc chấp nhận tiểu bang. Cho ngôn ngữ, trạng thái chấp nhận ban đầu của TM được thay đổi thành trạng thái dẫn đến việc tính toán không chấp nhận tạm dừng. Trong hai trường hợp, có thể cần thêm một ô phụ có ký hiệu bảo vệ mới ở bên trái để phát hiện các tính toán TM sẽ chấm dứt ở đầu bên trái, để làm cho chúng chấm dứt ở đầu bên phải.K????

Các ngôn ngữ này được xác định cho tất cả các kết hợp trạng thái q của máy Turing gốc. Chúng đại diện cho tất cả những gì có thể được quan sát (do đó được biết và tính toán) của đầu vào bởi TM.pq

Nếu là số lượng trạng thái, do đó chúng ta xác định 4 k 2 ngôn ngữ K ? ? ? ? 2 k ngôn ngữ A ? ? , do đó có tổng cộng 4 k 2 + 2 k ngôn ngữ. Trên thực tế, một số ngôn ngữ có thể bằng nhau.k4k2K????2kA??4k2+2k

Đây là những tính toán hạn chế đầu vào có thể có của TM bắt đầu từ một đầu của đầu vào. Do đó, các tính toán được tạo ra bởi mỗi chuỗi đầu vào (bên ngoài phần đầu vào của băng) được đặc trưng bởi tập hợp các ngôn ngữ như vậy, đầu vào thuộc hoặc không thuộc, do đó một giao điểm của mỗi ngôn ngữ hoặc bổ sung của nó trong Σ . Tất cả các giao điểm này là các giao điểm hữu hạn của r 4 k 2 + 2 k ngôn ngữ thông thường, hoặc bổ sung của chúng cũng là thường xuyên, và do đó là thường xuyên.4k2+2kΣ4k2+2k

Kết quả là, các thiết lập các nút giao thông định nghĩa một phân vùng của Σ * thành ít nhất 2 4 k 2 + 2 k ngôn ngữ thường xuyên ( tối đa là bởi vì một số ngôn ngữ ban đầu có thể được bình đẳng, và một số nút giao thông có thể quá). Tất cả các chuỗi thuộc cùng một lớp tương đương có thể tạo ra chính xác cùng một hành vi, như được thấy từ các đầu của đầu vào. Điều này ngụ ý rằng chúng không thể được phân biệt để tính toán Máy Turing, nếu bạn trừu tượng hóa những gì xảy ra trong khu vực đầu vào chỉ đọc.PΣ24k2+2k

Nếu chúng ta lấy hai chuỗi v trong cùng một lớp tương đương của P , chúng ta có thể chứng minh, bằng cách cảm ứng về số lần nhập khu vực đầu vào, đối với bất kỳ tính toán chấp nhận nào của TM trên u , sẽ có một tính toán chấp nhận TM trên v đó là giống hệt nhau ở mọi nơi bên ngoài khu vực đầu vào. Do đó, tất cả các chuỗi của một lớp tương đương đều được chấp nhận hoặc không có chuỗi nào. Kết quả là, ngôn ngữ được chấp nhận bởi TM là một liên minh của các lớp tương đương của P . Do đó, nó là một liên kết hữu hạn của các ngôn ngữ thông thường, và do đó nó là một ngôn ngữ thông thường.uvPuvP

Để rất đầy đủ, chúng tôi đã bỏ qua trường hợp chuỗi đầu vào trống. Trong trường hợp này, chúng tôi chỉ có một TM bình thường, có thể đọc hoặc viết ở bất cứ đâu. Nếu nó đạt đến trạng thái chấp nhận, chuỗi trống nằm trong ngôn ngữ, thì không. Nhưng điều đó ít ảnh hưởng đến thực tế là ngôn ngữ được công nhận là thường xuyên.

Tất nhiên, không thể quyết định liệu một lớp tương đương có hoặc không có trong ngôn ngữ (cùng giữ cho chuỗi trống). Đây là một bằng chứng không mang tính xây dựng.

QED

Máy Turing có băng chỉ đọc chỉ chấp nhận ngôn ngữ thông thường

Điều này được giảm bớt bởi kết quả trước đó. Nó được giữ vì nó sử dụng một cách tiếp cận khác, có lẽ ít thanh lịch hơn và giúp tôi tìm ra bằng chứng trước đó bằng cách hiểu những gì quan trọng. Nhưng nó cũng có thể được bỏ qua bởi độc giả. Tuy nhiên, một ưu điểm của bằng chứng này là nó là bằng chứng mang tính xây dựng tạo ra một FSA chấp nhận ngôn ngữ. Một bản phác thảo của một bằng chứng tương tự được đưa ra bởi Hendrik Jan trong câu trả lời của anh cho một câu hỏi tương tự trước đó , trong đó giả sử toàn bộ băng chỉ là đọc.

Tôi giả sử rằng biểu tượng trống ở phần không sử dụng của băng không bao giờ là một phần của đầu vào. Biểu tượng này được ghi nhận ở đây . TM được cho là chấp nhận khi nó đạt đến trạng thái chấp nhận.

Bước đầu tiên của bằng chứng là chỉ ra rằng đầu không cần phải rời khỏi khu vực đầu vào của băng. Do đó, chúng tôi phân tích những gì xảy ra khi đầu di chuyển khỏi biểu tượng đầu vào ngoài cùng bên phải. Các phân tích khi di chuyển ra ngoài cùng bên trái là giống hệt nhau.

q

  1. TM tiếp tục tính toán mãi mãi mà không cần phải quay lại phần đầu vào của băng;

  2. TM đạt đến (a) chấp nhận hoặc (b) dừng ở trạng thái không chấp nhận;

  3. r

q

10

0

Chúng tôi biểu thị phần có liên quan của điều khiển trạng thái hữu hạn bằng đồ thị có hướng trong đó các đỉnh là trạng thái của TM và trong đó các cạnh là các chuyển tiếp trống, với trọng số +1 hoặc -1 tùy thuộc vào việc đầu có phải di chuyển không phải hoặc trái

ARq

ER(q,r)1qr

qA

p,aR,qp,aR,qAqAR

p,aR,q(q,r)ERp,aS,rS

aFa={(p,r) there is a dummy transition p,aS,r}FaFar,aL,s(p,r)Fap,aL,s

+11

qA

Bây giờ chúng ta phải thực hiện một vài thay đổi về mặt thẩm mỹ, để làm cho TM này hoạt động chính xác như một NDA hai chiều (sự chấp nhận chỉ bằng cách thoát khỏi đầu vào bên phải vào trạng thái eccpting). Sau đó, chúng ta có thể dựa vào sự tương đương đã biết giữa 2-NDA và FSA (xem ví dụ Hopcroft + Ullman 1979, trang 40) để có được bằng chứng rằng ngôn ngữ là chính quy.

QED


0

Di chuyển sang trái hoặc phải không phải là vấn đề, vì hai chiều tự động hữu hạn nhận ra chính xác các ngôn ngữ thông thường (điều này không rõ ràng). Tuy nhiên, nếu TM của bạn có thể viết bên ngoài phần băng của từ đầu vào, tôi nghĩ bạn có thể sử dụng phần này của băng để nhận dạng bằng các ngôn ngữ thông thường. Có lẽ tôi không hiểu rõ câu hỏi.


Đây không thực sự giống như một câu trả lời. BTW Nhận xét trên của DW về "trình tự cắt ngang" chính xác về chủ đề: chúng được sử dụng để cho thấy 2DFA (2way det FA) nhận ra các bộ thông thường. Ở đây, điều duy nhất là TM có thể đi lang thang trên các phần trống của băng. Nếu bạn có thể ngăn chặn điều đó, thì bạn còn lại với 2DFA hoặc 2NFA. Tôi nghĩ rằng bạn có thể giảm một TM thành một TM khác không đi lang thang trên trống, sử dụng cả "các chuỗi chéo".
babou
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.