1 Recursively Enumerable and Recursive Languages.

Slides:



Advertisements
Similar presentations
Fall 2006Costas Busch - RPI1 A Universal Turing Machine.
Advertisements

Fall 2006Costas Busch - RPI1 Decidable Languages.
Prof. Busch - LSU1 Decidable Languages. Prof. Busch - LSU2 Recall that: A language is Turing-Acceptable if there is a Turing machine that accepts Also.
Courtesy Costas Busch - RPI1 A Universal Turing Machine.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata are like Turing Machines with a restriction: The working space of the tape is the space of the.
Fall 2004COMP 3351 Recursively Enumerable and Recursive Languages.
Fall 2003Costas Busch - RPI1 Decidability. Fall 2003Costas Busch - RPI2 Recall: A language is decidable (recursive), if there is a Turing machine (decider)
Computability and Complexity 7-1 Computability and Complexity Andrei Bulatov Recursion Theorem.
Recursively Enumerable and Recursive Languages
1 The Chomsky Hierarchy. 2 Unrestricted Grammars: Rules have form String of variables and terminals String of variables and terminals.
1 Uncountable Sets continued Theorem: Let be an infinite countable set. The powerset of is uncountable.
Fall 2004COMP 3351 The Chomsky Hierarchy. Fall 2004COMP 3352 Non-recursively enumerable Recursively-enumerable Recursive Context-sensitive Context-free.
Fall 2004COMP 3351 Reducibility. Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem.
Linear Bounded Automata LBAs
1 Decidability continued. 2 Undecidable Problems Halting Problem: Does machine halt on input ? State-entry Problem: Does machine enter state halt on input.
Fall 2005Costas Busch - RPI1 Recursively Enumerable and Recursive Languages.
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
Courtesy Costas Busch - RPI1 Reducibility. Courtesy Costas Busch - RPI2 Problem is reduced to problem If we can solve problem then we can solve problem.
Fall 2006Costas Busch - RPI1 Undecidable Problems (unsolvable problems)
Prof. Busch - LSU1 Undecidable Problems (unsolvable problems)
1 Reducibility. 2 Problem is reduced to problem If we can solve problem then we can solve problem.
1 Turing Machines. 2 A Turing Machine Tape Read-Write head Control Unit.
The Halting Problem – Undecidable Languages Lecture 31 Section 4.2 Wed, Oct 31, 2007.
1 1 CDT314 FABER Formal Languages, Automata and Models of Computation Lecture 15-1 Mälardalen University 2012.
A Universal Turing Machine
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
Recursively Enumerable and Recursive Languages
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
1 The Chomsky Hierarchy. 2 Unrestricted Grammars: Productions String of variables and terminals String of variables and terminals.
Costas Busch - RPI1 Decidability. Costas Busch - RPI2 Another famous undecidable problem: The halting problem.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Undecidable.
Recursively Enumerable and Recursive Languages. Definition: A language is recursively enumerable if some Turing machine accepts it.
Decidability.
1 A Universal Turing Machine. 2 Turing Machines are “hardwired” they execute only one program A limitation of Turing Machines: Real Computers are re-programmable.
Fall 2006Costas Busch - RPI1 RE languages and Enumerators.
Chapters 11 and 12 Decision Problems and Undecidability.
The Acceptance Problem for TMs
A Universal Turing Machine
Recursively Enumerable Languages
Recursively Enumerable and Recursive Languages
Standard Representations of Regular Languages
Busch Complexity Lectures: Reductions
Linear Bounded Automata LBAs
Reductions.
Undecidable Problems Costas Busch - LSU.
Reductions Costas Busch - LSU.
BCS 2143 Theory of Computer Science
Computing with Turing Machines
LIMITS OF ALGORITHMIC COMPUTATION
Turing Machines 2nd 2017 Lecture 9.
Turing Machines Acceptors; Enumerators
Decidability and Enumerability
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
Turing acceptable languages and Enumerators
Decidable Languages Costas Busch - LSU.
Non Deterministic Automata
Decidability and Undecidability
Elementary Questions about Regular Languages
Turing acceptable languages and Enumerators
Undecidable problems:
Proposed in Turing’s 1936 paper
Formal Languages, Automata and Models of Computation
CSCI 2670 Introduction to Theory of Computing
CS21 Decidability and Tractability
Decidability continued….
Instructor: Aaron Roth
Automata, Grammars and Languages
More Undecidable Problems
MA/CSSE 474 Theory of Computation
Presentation transcript:

1 Recursively Enumerable and Recursive Languages

2 Definition: A language is recursively enumerable if some Turing machine accepts it

3 For string : Let be a recursively enumerable language and the Turing Machine that accepts it ifthen halts in a final state ifthen halts in a non-final state or loops forever

4 Definition: A language is recursive if some Turing machine accepts it and halts on any input string In other words: A language is recursive if there is a membership algorithm for it

5 For string : Let be a recursive language and the Turing Machine that accepts it ifthen halts in a final state ifthen halts in a non-final state

6 We will prove: 1. There is a specific language which is not recursively enumerable (not accepted by any Turing Machine) 2. There is a specific language which is recursively enumerable but not recursive

7 Recursive Recursively Enumerable Non Recursively Enumerable

8 A Language which is not Recursively Enumerable

9 We want to find a language that is not Recursively Enumerable This language is not accepted by any Turing Machine

10 Consider alphabet Strings:

11 Consider Turing Machines that accept languages over alphabet They are countable:

12 Example language accepted by Alternative representation

13

14 Consider the language consists from the 1’s in the diagonal

15

16 Consider the language consists of the 0’s in the diagonal

17

18 Theorem: Language is not recursively enumerable

19 Proof: is recursively enumerable Assume for contradiction that There must exist some machine that accepts

20 Question:

21 Answer:

22 Question:

23 Answer:

24 Question:

25 Answer:

26 Similarly: for any Because either: or

27 Therefore, the machine cannot exist Therefore, the language is not recursively enumerable End of Proof

28 Observation: There is no algorithm that describes (otherwise would be accepted by some Turing Machine)

29 Recursive Recursively Enumerable Non Recursively Enumerable

30 A Language which is Recursively Enumerable and not Recursive

31 We want to find a language which There is a Turing Machine that accepts the language The machine doesn’t halt on some input Is recursively enumerable But not recursive

32 We will prove that the language Is recursively enumerable but not recursive

33

34 The language Theorem: is recursively enumerable

35 Proof: We will give a Turing Machine that accepts

36 Turing Machine that accepts For any input string Compute, for which Find Turing machine (using an enumeration procedure for Turing Machines) Simulate on input If accepts, then accept End of Proof

37 Observation: Recursively enumerable Not recursively enumerable (Thus, also not recursive)

38 Theorem: The language is not recursive

39 Proof: Assume for contradiction that is recursive Then is recursive: Take the Turing Machine that accepts halts on any input: If accepts then reject If rejects then accept

40 Therefore: is recursive But we know: is not recursively enumerable thus, not recursive CONTRADICTION!!!!

41 Therefore, is not recursive End of Proof

42 Recursive Recursively Enumerable Non Recursively Enumerable

43 Turing acceptable languages and Enumeration Procedures

44 We will prove: If a language is recursive then there is an enumeration procedure for it A language is recursively enumerable if and only if there is an enumeration procedure for it (weak result) (strong result)

45 Theorem: if a language is recursive then there is an enumeration procedure for it

46 Proof: Enumeration Machine Accepts Enumerates all strings of input alphabet

47 If the alphabet is then can enumerate strings as follows:

48 Enumeration procedure Repeat: generates a string checks if YES: print to output NO: ignore End of Proof

49 Example: Enumeration Output

50 Theorem: if language is recursively enumerable then there is an enumeration procedure for it

51 Proof: Enumeration Machine Accepts Enumerates all strings of input alphabet

52 If the alphabet is then can enumerate strings as follows:

53 Enumeration procedure Repeat:generates a string checks if YES: print to output NO: ignore NAIVE APPROACH Problem: If machine may loop forever

54 executes first step on BETTER APPROACH Generates second string executes first step on second step on Generates first string

55 Generates third string executes first step on second step on third step on And so on

56 1 Step in string

57 If for any string machine halts in a final state then it prints on the output End of Proof

58 Theorem: If for language there is an enumeration procedure then is recursively enumerable

59 Proof: Input Tape Enumerator for Compare Machine that accepts

60 Turing machine that accepts Repeat: Using the enumerator, generate the next string of For input string Compare generated string with If same, accept and exit loop End of Proof

61 We have proven: A language is recursively enumerable if and only if there is an enumeration procedure for it