Download presentation

Presentation is loading. Please wait.

Published bySavannah Quinlan Modified over 6 years ago

1
**By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman**

Theory of Computation Decidability Recursive and Recursively Enumerable Languages Source of Slides: Introduction to Automata Theory, Languages, and Computation By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman And Introduction to Languages and The Theory of Computation by J. C. Martin Prof. Muhammad Saeed

2
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Basic Mathematical Definitions Numbers: N = natural numbers = {1, 2, 3, …} Z = integers = {…, -2, -1, 0, 1, 2, …} Q = rational numbers ( expressed in ratios, 1/5, 3/7, 2/9 etc.) R = real numbers ( floating point, 1.5, etc. ) C = complex numbers (2+5i, 27- 3i etc. ) Countable Set: A set is countable if there is a one-to-one correspondence between the set and N, the natural numbers. It can be enumerated. { a, b, c, d, e, ……… } N, Z and Q are countable. R and C are uncountable. Dept. of Computer Science & IT, FUUAST Theory of Computation

3
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Rational Numbers, Q are countable 1/1 1/2 1/3 1/4 1/5 1/6 … 2/1 2/2 2/3 2/4 2/5 2/6 … 3/1 3/2 3/3 3/4 3/5 3/6 … 4/1 4/2 4/3 4/4 4/5 4/6 … 5/1 … ……. Dept. of Computer Science & IT, FUUAST Theory of Computation

4
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Uncountable Set: Cantor’s Diagonalization s1 = (0, 0, 0, 0, 0, 0, 0, ...) s2 = (1, 1, 1, 1, 1, 1, 1, ...) s3 = (0, 1, 0, 1, 0, 1, 0, ...) s4 = (1, 0, 1, 0, 1, 0, 1, ...) s5 = (1, 1, 0, 1, 0, 1, 1, ...) s6 = (0, 0, 1, 1, 0, 1, 1, ...) s7 = (1, 0, 0, 0, 1, 0, 0, ...) ………. s0 = (1, 0, 1, 1, 1, 0, 1, ...) Dept. of Computer Science & IT, FUUAST Theory of Computation

5
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability R is uncountable Proof: Suppose R is countable List R according to the bijection f: n f(n) _ … … … … … Dept. of Computer Science & IT, FUUAST Theory of Computation

6
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability R is uncountable Proof: Suppose R is countable List R according to the bijection f: n f(n) _ … … … … … set x = 0.a1a2a3a4… where digit ai ≠ ith digit after decimal point of f(i) (not 0, 9) e.g. x = … x cannot be in the list! Dept. of Computer Science & IT, FUUAST Theory of Computation

7
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Turing Machine Decidability Turing decidability L is Turing decidable (or just decidable) if there exists a Turing machine M that accepts all strings in L and rejects all strings not in L. Note that by rejection we mean that the machine halts after a finite number of steps and announces that the input string is not acceptable. Acceptance, as usual, also requires a decision after a finite number of steps. Dept. of Computer Science & IT, FUUAST Theory of Computation

8
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Decidability Turing Recognizability L is Turing recognizable if there is a Turing machine M that recognizes L, that is, M should accept all strings in L and M should not accept any strings not in L. This is not the same as decidability because recognizability does not require that M actually reject strings not in L. M may reject some strings not in L but it is also possible that M will simply "remain undecided" on some strings not in L; for such strings, M's computation never halts. Dept. of Computer Science & IT, FUUAST Theory of Computation

9
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Recursion and Recursive Functions Enumerable Sets Recursively Enumerable Languages Resursive Languages Non-Recursively Enumerable Languages Dept. of Computer Science & IT, FUUAST Theory of Computation

10
**decidable RE all languages**

Decidability decidable all languages regular languages context free languages RE decidable RE all languages Dept. of Computer Science & IT, FUUAST Theory of Computation

11
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability A language is recursively enumerable if some Turing machine accepts it. Dept. of Computer Science & IT, FUUAST Theory of Computation

12
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability A language is recursive if some Turing machine accepts it and halts on any input string. OR A language is recursive if there is a membership algorithm for it. Dept. of Computer Science & IT, FUUAST Theory of Computation

13
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability A language is recursively enumerable if and only if there is an enumeration procedure for it. If a language L is recursive then there is an enumeration procedure for it Dept. of Computer Science & IT, FUUAST Theory of Computation

14
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

15
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

16
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Theorem: S is an infinite countable set, the powerset 2s of S is uncountable Since S is countable, we can write S = { s1 , s2 , s3 , s4 , …….. } where S consists of s1 , s2 , s3 , s4 , ….. elements and the powerset 2s is of the form: { {s1}, {s2 }, … {s1 , s2 }, ….. {s1 , s2 , s3 , s4 } … } Dept. of Computer Science & IT, FUUAST Theory of Computation

17
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability String Encoding: Dept. of Computer Science & IT, FUUAST Theory of Computation

18
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

19
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

20
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

21
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Coding Turing Machines Dept. of Computer Science & IT, FUUAST Theory of Computation

22
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Transition Rules are: Coding Code for M Dept. of Computer Science & IT, FUUAST Theory of Computation

23
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Diagonalization Language: Dept. of Computer Science & IT, FUUAST Theory of Computation

24
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Theorem: Ld is not a recursively enumerable language. That is there is no Turing Machine that accepts Ld Dept. of Computer Science & IT, FUUAST Theory of Computation

25
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

26
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Fig. 10 Dept. of Computer Science & IT, FUUAST Theory of Computation

27
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

28
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

29
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

30
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Decidable Languages about DFA Dept. of Computer Science & IT, FUUAST Theory of Computation

31
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

32
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

33
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Halting and Acceptance Problems: Acceptance Problem: Does a Turing machine accept an input string? ATM is recursively enumerable. Dept. of Computer Science & IT, FUUAST Theory of Computation

34
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

35
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

36
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

37
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

END Dept. of Computer Science & IT, FUUAST Theory of Computation

38
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

39
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

40
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

41
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

42
**Dept. of Computer Science & IT, FUUAST Theory of Computation**

Decidability Dept. of Computer Science & IT, FUUAST Theory of Computation

Similar presentations

© 2020 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google