computational complexity i: computability vs...

43
Section 1: Computability Section 2: Finite Automata - Recognizable Languages Section 3: Context-free Grammars - Context-free Languages Section 4: Turing Machines Section 6: Synopsis Computational Complexity I: Computability vs Complexity Maria-Eirini Pegia School of Informatics Thessaloniki Seminar on Theoretical Computer Science and Discrete Mathematics Aristotle University of Thessaloniki Maria-Eirini Pegia Computational Complexity I

Upload: others

Post on 25-Jul-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Complexity I: Computability vs Complexity

Maria-Eirini Pegia

School of Informatics Thessaloniki

Seminar on Theoretical Computer Science and Discrete MathematicsAristotle University of Thessaloniki

Maria-Eirini Pegia Computational Complexity I

Page 2: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context

1 Section 1: Computability

2 Section 2: Finite Automata - Recognizable Languages

3 Section 3: Context-free Grammars - Context-free Languages

4 Section 4: Turing Machines

5 Section 6: Synopsis

Maria-Eirini Pegia Computational Complexity I

Page 3: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

What is a decision problem?

Figure: A decision problem has only two possible outputs, YES or NO.

Maria-Eirini Pegia Computational Complexity I

Page 4: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

What is a decision problem?

Figure: A decision problem has only two possible outputs, YES or NO.

Maria-Eirini Pegia Computational Complexity I

Page 5: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

What is a decision problem?

Figure: A decision problem has only two possible outputs, YES or NO.

Maria-Eirini Pegia Computational Complexity I

Page 6: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

Y Can we solve all the problems?

Y Why some problems are notsolving by computers?

Maria-Eirini Pegia Computational Complexity I

Page 7: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

Y Can we solve all the problems?

Y Why some problems are notsolving by computers?

Maria-Eirini Pegia Computational Complexity I

Page 8: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Computational Theory

Y Can we solve all the problems?

Y Why some problems are notsolving by computers?

Maria-Eirini Pegia Computational Complexity I

Page 9: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

History Overview

Figure: Hilbert Figure: Godel Figure: Turing

Y Completeness and automation of mathematics (1900).Y Mathematics are not complete!Y Mathematics are not automating!There are problems that are not computable!!!

Maria-Eirini Pegia Computational Complexity I

Page 10: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

History Overview

Figure: Hilbert Figure: Godel Figure: Turing

Y Completeness and automation of mathematics (1900).

Y Mathematics are not complete!Y Mathematics are not automating!There are problems that are not computable!!!

Maria-Eirini Pegia Computational Complexity I

Page 11: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

History Overview

Figure: Hilbert Figure: Godel Figure: Turing

Y Completeness and automation of mathematics (1900).Y Mathematics are not complete!

Y Mathematics are not automating!There are problems that are not computable!!!

Maria-Eirini Pegia Computational Complexity I

Page 12: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

History Overview

Figure: Hilbert Figure: Godel Figure: Turing

Y Completeness and automation of mathematics (1900).Y Mathematics are not complete!Y Mathematics are not automating!

There are problems that are not computable!!!

Maria-Eirini Pegia Computational Complexity I

Page 13: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

History Overview

Figure: Hilbert Figure: Godel Figure: Turing

Y Completeness and automation of mathematics (1900).Y Mathematics are not complete!Y Mathematics are not automating!There are problems that are not computable!!!

Maria-Eirini Pegia Computational Complexity I

Page 14: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Models of Computation

Y Finite Automata and RegularExpressions

Y Grammars and PushdownAutomata

Y Turing Machines

Maria-Eirini Pegia Computational Complexity I

Page 15: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context

1 Section 1: Computability

2 Section 2: Finite Automata - Recognizable Languages

3 Section 3: Context-free Grammars - Context-free Languages

4 Section 4: Turing Machines

5 Section 6: Synopsis

Maria-Eirini Pegia Computational Complexity I

Page 16: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Finite Automata

Y Automaton = an abstract computing device

Figure: L = �ab 8 aab��

Maria-Eirini Pegia Computational Complexity I

Page 17: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Recognizable Languages

L = � anbn S n C 0 �

NOT recognizable. . .(pumping lemma)

What can we do now?

Maria-Eirini Pegia Computational Complexity I

Page 18: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Recognizable Languages

L = � anbn S n C 0 � NOT recognizable. . .(pumping lemma)

What can we do now?

Maria-Eirini Pegia Computational Complexity I

Page 19: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context

1 Section 1: Computability

2 Section 2: Finite Automata - Recognizable Languages

3 Section 3: Context-free Grammars - Context-free Languages

4 Section 4: Turing Machines

5 Section 6: Synopsis

Maria-Eirini Pegia Computational Complexity I

Page 20: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Grammars

Definition

G = �X ,V ,S ,R� context-free grammar

X : terminals,

V : variables,

S : axiom,

R b V � �V 8X ��

Maria-Eirini Pegia Computational Complexity I

Page 21: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Languages

L = � anbn S n C 0 � is context-free

Maria-Eirini Pegia Computational Complexity I

Page 22: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Languages

L = � anbn S n C 0 �

is context-free

Maria-Eirini Pegia Computational Complexity I

Page 23: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Languages

L = � anbn S n C 0 � is context-free

Maria-Eirini Pegia Computational Complexity I

Page 24: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Languages

L = � ww S w > �a,b�� �

NOT context-free. . .

What can we do now?

Maria-Eirini Pegia Computational Complexity I

Page 25: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context-free Languages

L = � ww S w > �a,b�� � NOT context-free. . .

What can we do now?

Maria-Eirini Pegia Computational Complexity I

Page 26: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context

1 Section 1: Computability

2 Section 2: Finite Automata - Recognizable Languages

3 Section 3: Context-free Grammars - Context-free Languages

4 Section 4: Turing Machines

5 Section 6: Synopsis

Maria-Eirini Pegia Computational Complexity I

Page 27: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Maria-Eirini Pegia Computational Complexity I

Page 28: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing Machine

Q: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 29: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,

Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 30: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,

Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 31: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,

δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 32: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,

q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 33: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,

B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 34: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,

F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 35: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Turing Machine

Definition

M = �Q,Σ,Γ, δ,q0,B,F � Turing MachineQ: set of states,Σ: finite set of inputs,Γ: complete set of tape symbols, Σ b Γ,δ: Q � Γ Ð� Q � Γ � �L,R�,q0 > Q: initial state,B > Γ: blank symbol,F ` Q: final states

Maria-Eirini Pegia Computational Complexity I

Page 36: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Thesis Church-Turing

If a problem can be solved with an algorithm, then there is a TMwhich solves the problem.

Extended model of TM:

- DTM- Nondeterministic TM- Restricted TM,- Multitape TM, . . .

Maria-Eirini Pegia Computational Complexity I

Page 37: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Thesis Church-Turing

If a problem can be solved with an algorithm, then there is a TMwhich solves the problem.

Extended model of TM:

- DTM- Nondeterministic TM- Restricted TM,- Multitape TM, . . .

Maria-Eirini Pegia Computational Complexity I

Page 38: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Halting Problem

Maria-Eirini Pegia Computational Complexity I

Page 39: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Halting Problem

Maria-Eirini Pegia Computational Complexity I

Page 40: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Context

1 Section 1: Computability

2 Section 2: Finite Automata - Recognizable Languages

3 Section 3: Context-free Grammars - Context-free Languages

4 Section 4: Turing Machines

5 Section 6: Synopsis

Maria-Eirini Pegia Computational Complexity I

Page 41: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Synopsis

Y Computability

Y Finite Automata

Y Context-free Grammars

Y Turing Machines

Maria-Eirini Pegia Computational Complexity I

Page 42: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

References

Hopcroft, J. E., Ullman, J. D.. Introduction to AutomataTheory, Languages, and Computation. Boston:Addison-Wesley, c2001.

Papadimitriou, C. H.. Computational Complexity. Reading,Mass.: Addison-Wesley, 1994.

Maria-Eirini Pegia Computational Complexity I

Page 43: Computational Complexity I: Computability vs Complexityusers.auth.gr/users/0/3/004030/public_html/complexity I.pdf · Section 1: Computability Section 2: Finite Automata - Recognizable

Section 1: ComputabilitySection 2: Finite Automata - Recognizable Languages

Section 3: Context-free Grammars - Context-free LanguagesSection 4: Turing Machines

Section 6: Synopsis

Thank you!

Maria-Eirini Pegia Computational Complexity I