Các bộ mã hóa của một lớp ngôn ngữ không tầm thường có chứa bộ trống có thể được liệt kê đệ quy không?


8

C L CCRELC

L={ML(M)C}

Giả sử rằng MloopyL , trong đó Mloopy là một TM không bao giờ dừng lại. Tôi tự hỏi nếu có thể LRE ?

Theo định lý của Rice, tôi biết rằng LR (tập hợp các ngôn ngữ đệ quy), do đó, LRE hoặc L¯RE . Nó có phải là tùy chọn đầu tiên kể từ MloopyL không?


1
Bạn nên giải thích ký hiệu của bạn. Là gì ? Là gì ? Là gì ? Điều duy nhất bạn giải thích là RE đại diện cho điều gì, và đó là điều bạn không cần giải thích. L ( M ) ¯ LML(M)L¯
Andrej Bauer

2
@AndrejBauer: Đó là ký hiệu khá chuẩn. Họ có nghĩa, từ trái sang phải, mã hóa của M, ngôn ngữ được chấp nhận bởi , và phần bù của . LML
Raphael

Bạn có nghĩa là "vì vậy hoặc ", tôi giả sử? ¯ LR ELREL¯RE
Raphael

1
có một phần mở rộng của định lý Rice mô tả các điều kiện tạo . Tôi có thể có thời gian sau đó để viết nó, trừ khi những người khác làm. NHƯNG , nếu (được ngụ ý bởi sự tồn tại của ), thì . Điều này cũng theo thm của Rice với bằng chứng tiêu chuẩn. C M l o o pL L R ELRECMloopLLRE
Ran G.

@Raphael, bạn nói đúng.
Tử số

Câu trả lời:


3

Không, điều đó là không thể. Có một phiên bản mở rộng của định lý Rice để chứng minh một bộ chỉ số không được liệt kê đệ quy.

Trong ký hiệu của bạn, định lý nói rằng nếu một (không tầm thường) chứa ngôn ngữ có siêu ngôn ngữ thích hợp không có trong , thì . Trực giác là không có thuật toán nào có thể tách mã hóa và ; họ không thể quyết định rằng máy được mã hóa không chấp nhận bất kỳ từ nào từ sau một khoảng thời gian hữu hạn mà họ phải có.L 1 L 2 C L R E L 1 L 2 L 2L 1CL1L2 CLREL1L2L2L1

Bây giờ bạn yêu cầu nhưng , do đó định lý được áp dụng và không được liệt kê đệ quy.C 2 Σ * LCC2ΣL


  1. Các bài viết trên Wikipedia là khủng khiếp, hãy cẩn thận!

Tôi có thể khẳng định rằng vì chúng ta có được máy Turing rỗng, không chấp nhận bất kỳ từ nào và do Định lý Rice chúng ta biết rằng (tất cả các điều kiện Rice vẫn ổn) vì vậy chúng ta có được ? E t m L L R E t m C o - R E L R EL(Mloop)=EtmLLREtmCoRELRE
Tử số

@ Người đếm: Etm là gì? Trong mọi trường hợp, không nhất thiết phải ở , nên không. Nếu đó là, lý do đó sẽ làm việc, vâng. c o - R ELco-RE
Raphael

4

để hoàn thành câu trả lời của Raphael, có một phần mở rộng của định lý Rice nói như sau:

Định lý tổng quát của gạo

Đặt là một số thuộc tính và để là tất cả các TM thỏa mãn thuộc tính , nghĩa là, Sau đó, khi và chỉ khi tất cả các điều kiện sau giữ:L S S L S = { M | L ( M ) S } . L SR ESRELSS

LS={ML(M)S}.
LSRE
  1. đối với bất kỳ , nếu và sau đó .L 1S L 1L 2 L 2SL1,L2REL1SL1L2L2S
  2. nếu sau đó tồn tại một hữu hạn mà .L 2L 1 L 2SL1SL2L1L2S
  3. Ngôn ngữ của 'tất cả các ngôn ngữ hữu hạn trong ' là trong RE. (nói cách khác, tồn tại TM , nếu là ngôn ngữ hữu hạn và được cung cấp cho làm đầu vào, chỉ chấp nhận nếu .M S L L = { w 1 , w 2 , ... w k ) ( w 1 , w 2 , ... , w k ) M S M L SS
    MSLL={w1,w2,wk)(w1,w2,,wk)MSMLS

Bây giờ trở lại câu hỏi ban đầu. Chúng tôi bây giờ mà để . Nhưng vì TM này không bao giờ tạm dừng. Điều này có nghĩa rằng .MloopyLL(Mloopy)CL(Mloopy)=C

Bây giờ hãy xem điều kiện đầu tiên của định lý trên. BẤT CỨ ngôn ngữ thỏa mãn . Do đó, để thỏa mãn điều kiện 1, phải là . Tuy nhiên, câu hỏi nói rằng và do đó, theo định lý, .L C = R E C R E L R ELLC=RECRELRE


Có một nguồn mà tôi có thể tìm hiểu thêm về định lý này? Tôi không thể tìm thấy một trực tuyến nào là thỏa đáng.
Gokul

1
@Gokul Tôi được cho biết rằng định lý này xuất hiện trong cuốn sách của Hopcroft, Motwani, Ullman, nhưng chỉ trong phiên bản đầu tiên của nó (rõ ràng nó đã bị xóa trong các phiên bản sau).
Ran G.

@Ran G. Tôi không thể tìm thấy cuốn sách được đề cập để kiểm tra điều này nhưng # 3 có vẻ sai, vì đối với , ngôn ngữ của tất cả các ngôn ngữ hữu hạn không phải là . Bạn có thể có nghĩa là một điều kiện tương tự khác: , trong đó là mã hóa chính tắc của các ngôn ngữ hữu hạn, là phép liệt kê chuẩn của Ngôn ngữ , và một số chức năng hoàn toàn tính toán. Trong trường hợp đó, điều kiện này chỉ tương đương với là . (Xem Lý thuyết của H. Rogers về các hàm đệ quy và khả năng tính toán hiệu quả p324 ) Mặc dù # 1 và # 2 là đủ ở đây.R E x ( x L SS=RERED W R E f L S R Ex(xLSu(Df(u)Wx))DWREfLSRE
Beleg

@Beleg Tôi không thấy lý do tại sao nó sai. Nếu thì bất kỳ ngôn ngữ hữu hạn nào đều thuộc S , do đó TM chấp nhận bất kỳ chuỗi nào (hay đúng hơn là bất kỳ chuỗi có định dạng tốt nào) là một yếu tố quyết định cho tập hợp tất cả các ngôn ngữ hữu hạn trong S. Nếu bạn vẫn không đồng ý, hãy tiếp tục trong Trò chuyện Khoa học Máy tính . S=RES
Ran G.

0

Có thể là là một thiết lập lại. Hãy xem xét các trường hợp C = R E . Thì L là tập hợp tất cả các mã của tất cả các máy Turing. Đây là một tập đệ quy, trên thực tế, tùy thuộc vào các chi tiết của mã hóa, chúng ta có thể có L = N . Vì vậy, thực sự sai khi L không thể được đệ quy.LC=RELL=NL

Tôi nghi ngờ bạn đã định dạng sai câu hỏi.


OP loại trừ . RE
Raphael

@Raphael Tôi không chắc chắn (nó phụ thuộc vào việc được dự định như nghiêm ngặt), nhưng nếu đó là những gì làm cho thú câu hỏi, hãy giả sử C không phải là toàn bộ của R E . CRE
Gilles 'SO- ngừng trở nên xấu xa'

@Andrej Cảm ơn bạn đã trả lời, nhưng Raphael là đúng, tôi loại trừ . RE
Tử số
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.