/
Theory of Computation Theory of Computation

Theory of Computation - PowerPoint Presentation

sherrill-nordquist
sherrill-nordquist . @sherrill-nordquist
Follow
405 views
Uploaded On 2016-03-06

Theory of Computation - PPT Presentation

1 Theory of Computation Peer Instruction Lecture Slides by  Dr Cynthia Lee UCSD  are licensed under a  Creative Commons Attribution NonCommercial ShareAlike 30 Unported License ID: 244501

languages turing decidable recognizable turing languages recognizable decidable digit closed accepts string proof rejects complement running show sets recognizes

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Theory of Computation" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Theory of Computation

1

Theory of Computation Peer Instruction Lecture Slides by Dr. Cynthia Lee, UCSD are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.Based on a work at www.peerinstruction4cs.org.Slide2

Infinite Loops“Are We there YET?”

Flashback from CSE 8A/B:

2Slide3

If there exists a TM M that accepts every

string in L, and rejects all other strings, then L is:

Turing decidableTuring recognizable, but not decidableNot enough information3Slide4

If there exists a TM M that accepts every

string in L, and loops for all strings not in L, then L is:

Turing decidableTuring recognizable, but not decidableNot enough information4“there exists” problem: there may be another TM that does decide itBesides that, little problem that Sigma* meets this definition, but is decidable (statement about looping for strings not in L is vacuously true)Slide5

If there exists a

for all TM M such that M recognizes L, M is not a decider, then L is:

Turing decidableTuring recognizable, but not decidableNot enough information5Slide6

DecidabilityImportant Decidable LANGUAGES

More Proofs

6Slide7

String Encoding Notation < >

Turing Machines always take a single input string of finite lengthM(w)But sometimes we want them to take as input several strings, or an object, or several objects

We use < > to denote “encode this as a single string”Several strings can be combined into one string by using a delimiter character not in the main alphabet<s1,s2,s3,s4>Object(s) can be encoded as a finite string A video V can be encoded as a (very long) string of 0’s and 1’s <V>The diagram for TM M can be encoded as a string <M>Three TM’s M1, M2 and M3 <M1,M2,M3>7Slide8

String Encoding Notation < >

Since we already know these encodings can be done, we just put

triangle brackets around them to denote “encode this as a string”For standard objects (TMs, DFAs, etc), no further explanation is necessary—use book as your guideNOTE! Languages CANNOT generally be encoded as a string because if there are infinitely many strings, there is no way to concatenate all the strings together into a single finite stringDFAs, NFAs, REs, PDAs, CFGs and TMs can all be encoded as strings (<D> <N> <M> etc) However their languages cannotSlide9

Prove that the class of Turing-decidable languages is closed under

Union

Given: Two decidable languages A and B, and TMs that decide them, MA and MB.Want to Show: A TM MU that decides A U B.Construction:MU(w) = //w is a stringSimulate running MA(w) If it accepts, accept. If it rejects, go to step 2:Simulate running MB(w)If it accepts, accept. If it rejects, reject.Correctness: //this is for you to debate!Conclusion: MU is a TM that decides AUB, therefore AUB is decidable, and decidable languages are closed under union. QED.This proof is:CorrectIncorrectSlide10

Prove that the class of Turing-recognizable languages is closed under

Union

Given: Two Turing-recognizable languages A and B, and TMs that recognize them, MA and MB.Want to Show: A TM MU that recognizes A U B.Construction:MU(w) = //w is a stringSimulate running MA(w) If it accepts, accept. If it rejects, go to step 2:Simulate running MB(w)If it accepts, accept. If it rejects, reject.Correctness: //this is for you to debate!Conclusion: MU is a TM that recognizes AUB, therefore AUB is Turing-recognizable, and Turing-recognizable languages are closed under union. QED.This proof is:CorrectIncorrectSlide11

Prove that the class of Turing-recognizable languages is closed under

Intersection

Given: Two Turing-recognizable languages A and B, and TMs that recognize them, MA and MB.Want to Show: A TM MI that recognizes A intersect B.Construction:MI(w) = //w is a stringSimulate running MA(w) If it rejects, reject. If it accepts, go to step 2:Simulate running MB(w)If it accepts, accept. If it rejects, reject.Correctness: //this is for you to debate!Conclusion: MI is a TM that recognizes A intersect B, therefore A intersect B is Turing-recognizable, and Turing-recognizable languages are closed under intersection. QED.This proof is:CorrectIncorrectSlide12

Prove that the class of Turing-decidable languages is closed under

Intersection

Given: Two decidable languages A and B, and TMs that decide them, MA and MB.Want to Show: A TM MI that decides A intersect B.Construction:MI(w) = //w is a stringSimulate running MA(w) If it rejects, reject. If it accepts, go to step 2:Simulate running MB(w)If it accepts, accept. If it rejects, reject.Correctness: //this is for you to debate!Conclusion: MI is a TM that decides A intersect B, therefore A intersect B is decidable, and decidable languages are closed under intersection. QED.This proof is:CorrectIncorrectSlide13

Prove that the class of Turing-decidable languages is closed under

Complement

Given: A decidable language A, and a TM that decides it, MA.Want to Show: A TM MC that decides the complement of A.Construction:MC(w) = //w is a stringSimulate running MA(w) If it accepts, reject. If it rejects, accept.Correctness: //this is for you to debate!Conclusion: MC is a TM that decides the complement of A, therefore the complement of A is decidable, and decidable languages are closed under complement. QED.This proof is:CorrectIncorrectSlide14

Prove that the class of Turing-recognizable languages is closed under

Complement

Given: A Turing-recognizable language A, and a TM that recognizes it, MA.Want to Show: A TM MC that recognizes the complement of A.Construction:MC(w) = //w is a stringSimulate running MA(w) If it accepts, reject. If it rejects, accept.Correctness: //this is for you to debate!Conclusion: MC is a TM that recognizes the complement of A, therefore the complement of A is Turing-recognizable, and Turing-recognizable languages are closed under complement. QED.This proof is:CorrectIncorrectSlide15

Co-Turing-Recognizable Languages

Our current classes of langauges:Regular

Context-freeTuring-decidable (AKA just “decidable”)Turing-recognizable (or r.e.)co-Turing-recognizable (or co-r.e.)We now have the new class “co-Turing-recognizable” (or “co-r.e.” for short)Language A is co-r.e. if the complement of A is r.e.15Slide16

CardinalityInfinity and Infinities

To infinity, and beyond! (really)

16Slide17

Set Theory and Sizes of Sets

How can we say that two sets are the same size?Easy for finite sets--what about infinite sets?

Georg Cantor (1845-1918), who invented Set Theory, proposed a way of comparing the sizes of two sets that does not involve counting how many things are in eachWorks for both finite and infiniteSET SIZE EQUALITY:Two sets are the same size if there is a bijective (one-to-one and onto) function mapping from one to the otherIntuition: neither set has any element “left over” in the mapping17Slide18

One-to-one and Onto

f is one-to-one but NOT onto.Does this prove that |N| ≠ |N|?

Draw a function that is onto but not one-to-one.18Slide19

One-to-one and Onto

f is:One-to-One

OntoCorrespondence (both (a) and (b))Neither19Slide20

One-to-one and Onto

f is:One-to-One

OntoCorrespondence (both (a) and (b))Neither20Slide21

It gets even weirder:Rational Numbers

21

1/11/21/31/41/51/6…2/12/22/32/42/52/6…3/13/23/33/43/53/6…4/14/24/34/44/54/6…5/15/25/35/45/55/6...6/16/26/36/46/56/6……

Q

= {m/n |

m,n

are in

N

}Slide22

Sizes of Infinite Sets

The number of Natural Numbers is equal to the number of positive Even Numbers, even though one is a proper subset of the other!|N| = |E+|,

not |N| = 2|E+| The number of Rational Numbers is equal to the number of Natural Numbers|N| = |Q|, not |Q| ≈ |N|2But it gets even weirder than that:It might seem like Cantor’s definition of “same size” for sets is so overly broad, that any two sets of infinite size could be proven to be the “same size”Not so!!!!22Slide23

Thm. |R| != |N|Proof by contradiction: Assume |R| = |N|, so a correspondence

f exists between N and R.

23Want to show: no matter how f is designed (we don’t know how it is designed so we can’t assume anything about that), it cannot work correctly. Specifically, we will show a number z in R that can never be f(n) for any n, no matter how f is designed.Therefore f is not onto, a contradiction.Slide24

Thm. |R| != |N|Proof by contradiction: Assume a correspondence f

exists between N and R.

24nf(n)1.100000…2.333333…3.314159………We construct z as follows:z’s nth digit is the nth digit of f(n), PLUS ONE* (*wrap to 1 if the digit is 9)Below is an example f

What

is

z in this example?

.244…

.134…

.031…

.245…Slide25

Thm. |R| != |N|Proof by contradiction: Assume a correspondence f

exists between N and R.

25nf(n)1.d11d12d13d14…2.d21d22d23d24…3.d31d32d33d34………We construct z as follows:z’s nth digit is the nth digit of f(n), PLUS ONE* (*wrap to 1

if the digit is 9)

Below generalized version of

f

(n)

What

is z

?

.d

1

1

d

1

2

d

1

3

.

d

1

1

d

2

2

d

3

3

.[d

1

1

+1]

[

d

2

2

+1]

[

d

3

3

+1

]

.[

d

1

1

+1

] [

d

2

1

+1

] [

d

3

1

+1

]

…Slide26

Thm. |R| != |N|Proof by contradiction: Assume a correspondence f

exists between N and R.

26nf(n)1.d11d12d13d14…2.d21d22d23d24…3.d31d32d33d34………How do we reach a contradiction?Must show that z cannot be f(n) for any n

How do we know that z ≠ f(n) for any n?

We can’t know if z =

f

(n) without knowing what

f

is and what n is

Because z’s

n

th

digit differs from n‘s n

th

digit

Because z’s

n

th

digit differs from

f

(i)’s n

th

digitSlide27

Thm. |R| != |N|

27

Proof by contradiction: Assume |R| = |N|, so a correspondence f exists between N and R.Want to show: f cannot work correctly. Let z = [z’s nth digit = (nth digit of f(n)) + 1]. Note that z is in R, but for all n in N, z != f(n). Therefore f is not onto, a contradiction. So |R| ≠ |N||R| > |N|Slide28

Diagonalization

28

nf(n)1.d11d12d13d14d15d16d17d18d19…2.d21d22d23d24d25d26d27d28d29…3.d31d32d33d3

4

d

3

5

d

3

6

d

3

7

d

3

8

d

3

9

4

.d

4

1

d

4

2

d

4

3

d

4

4

d

4

5

d

4

6

d

4

7

d

4

8

d

4

9

5

.d

5

1

d

5

2

d

5

3

d

5

4

d

5

5

d

5

6

d

5

7

d

5

8

d

5

9

6

.d

6

1

d

6

2

d

6

3

d

6

4

d

6

5

d

6

6

d

6

7

d

6

8

d

6

9

7

.d

7

1

d

7

2

d

7

3

d

7

4

d

7

5

d

7

6

d

7

7

d

7

8

d

7

9

8

.d

8

1

d

8

2

d

8

3

d

8

4

d

8

5

d

8

6

d

8

7

d

8

8

d

8

9

9

.d

9

1

d

9

2

d

9

3

d

9

4

d

9

5

d

9

6

d

9

7

d

9

8

d

9

9

…Slide29

Some infinities are more infinite than other infinities

29

Natural numbers are called countableAny set that can be put in correspondence with N is called countable (ex: E+, Q)Real numbers are called uncountableAny set that can be put in correspondence with R is called “uncountable”But it gets even weirder…There are more than two categories!Slide30

Some infinities are more infinite than other infinities

30

|N| is called א0|E+| = |Q| = א0|R| is maybe א1Although we just proved that |N| < |R|, and nobody has ever found a different infinity between |N| and |R|, mathematicians haven’t proved that there are not other infinities between |N| and |R|, making |R| = א2 or greater Sets exist whose size is א0, א1, א2, א3…An infinite number of aleph numbers!An infinite number of different

infinitiesSlide31

Famous People: Georg Cantor (1845-1918)

His theory of set size, in particular transfinite numbers (different infinities) was so strange that many of his contemporaries hated it

Just like many CSE 105 students!“scientific charlatan” “renegade” “corrupter of youth”“utter nonsense” “laughable” “wrong”“disease”“I see it, but I don't believe it!” –Georg Cantor31“The finest product of mathematical genius and one of the supreme achievements of purely intellectual human activity.” –David HilbertSlide32

What does this have to do with computer science? Or Turing Machines?

The set of all possible Turing Machines is countable

The set of all possible languages is uncountableTherefore….The language NATURAL = {<w> | w is a natural number} is not Turing decidableSome languages are not Turing decidableSome languages are not Turing recognizableSome Turing Machines don’t recognize any languageNone or more than one of theseThat’s a start, but more diagonalization gets us a more specific result32Slide33

ParadoxXoDARAP

Preparing for DIAGONALIZATION!

33XODARAPPARADOXSlide34

Warm-up

You can prove a language is Regular by drawing a DFA that recognizes the language.

TRUEFALSENot enough information to decide between (a) and (b)OtherDr. Lee wrote down number 5.TRUEFALSENot enough information to decide between (a) and (b)Other34Slide35

This sentence is false.

TRUEFALSENot enough information to decide between (a) and (b)

Other35Slide36

Liar’s Paradox“This sentence is false.”

This has been perplexing people since at least the Greeks in 4th century BCE (2300 years!)

What are some key features of this that make it a paradox?36Slide37

Two more examples

This sentence is 36 characters long.

TRUEFALSENot enough information to decide between (a) and (b)Other37This sentence is in French.TRUEFALSENot enough infoOtherSlide38

The Barber

A certain town has only one barber (a man). Every man in the town is clean-shaven. For each man

m in the town, the barber shaves m if and only if m does not shave himself.Question: Does the barber shave himself?YESNONot enough information Other38Slide39

Making Lists

Suppose you have many, many lists. So many, in fact, that some of your lists are lists of lists (to help you organize your lists), and some of them even include themselves.

39Ex: “list of lists I have created today.”Slide40

List Organization Question

Since some of your lists include themselves, and you know that self-reference is dangerous business, you make a list of all lists that do not

include themselves.Call this list NON-DANGER-LIST.Question:Should NON-DANGER-LIST include itself?YESNONot enough informationOther40Slide41

Grandparent Paradox(Time Travel Paradox)

You travel back in time and prevent one pair of your biological grandparents from ever meeting each other (assume this prevents your birth).Pop culture version:

41