Sei sulla pagina 1di 12

RECAP

CSC-318
Three Kinds of Machines

Machine Expressiveness

Finite Automata Regular Languages

Pushdown Automata Context-free Languages

Turing Machines Turing-computable Languages


(aka. decidable languages)
Inclusion Between Languages
Nondecidable Languages


Semidecidable Languages


Decidable Languages

Context-Free Languages

Regular languages
Configurations
Configurations indicate what kind of information the
machines are transforming

Machine Configuration Explanation


Finite automata (q,w) q: state, w: word

Pushdown automata (q,w,) q: state, w: word


: stack

Turing machines (q,LShRS) q: state, h: head


LShRS: tape
Notion of Acceptance
Acceptance indicates what kinds of configurations are
considered successful computations

Machine Configuration Acceptance if

Finite automata (q,w) q: final state, w = e

Pushdown automata (q,w,) q: final state, w =e


=e

Turing machines (h, 1) h is a halting state


Determinism vs Nondeterminism
•Determinism means that for every configuration there is
always one and only one applicable transition
•Nondeterminism means that for every configuration, C, that
can be transformed into an acceptable configuration, AC, the
nondeterministic machine will always be able to guess the
correct sequence of transformations such that C * AC

•Deterministic automata accept the same languages as


nondeterministic ones
•Deterministic Turing machines semidecide the same
languages as nondeterministic ones
Decidable vs Enumerability
Theorem
Theorem1.
1.IfIfaalanguage
languageisisdecidable
decidablethen
thenthe
thelanguage
languageisis
enumerable
enumerable
Theorem
Theorem2.2.AAlanguage
languageisissemi-decidable
semi-decidableififand
andonly
onlyififthe
the
language
languageisisenumerable
enumerable

Theorem
Theorem3.3.There
Thereare
arelanguages
languageswhich
whichare
arenot
notdecidable.
decidable.
 There
Thereare
arelanguages
languagesthat
thatare
arenot
noteven
evensemi-decidable
semi-decidable

 Theorem
Theorem4.4.HALT-PROG
HALT-PROGisisnot
notdecidable
decidable
 Theorem
Theorem5.5.The
Theset
setof
ofall
allTuring
TuringMachines
Machinesisisenumerable
enumerable
Theorem
Theorem6.6.There
Thereare
arefunctions
functionsthat
thatare
arenot
notTuring
Turing

computable
computable
* is Enumerable
Theorem. If  is finite then * is enumerable

If  = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, * = {0, 1, …, 12, 13, …, 654, …}

If  = {a, b, c, d, e, f, g, h, i, j} * = {a, b, …, bc, cd, …, gfe, …}

If  consist of 500 symbols, we map them to the first 500 numbers

The Turing machine that enumerates


* all strings in 
Decidable Implies Enumerable
Suppose that L is decidable. By definition, it means that there
is a Turing machine ML that decides L
If word is in L it copies
into the second tape and
* ML adds an space

For example if L = {anbn: n = 0, 1, 2, …} and


 = {a, b, c } then * = {a, b, c, aa, ab, ac, ba, bb, …}

Tape2: abaabb…
An enumeration of L!
My Research: AI for Interactive Systems
Interactive Entertainment Systems

Need 2 persons!
My Research: AI for Interactive Systems
Interactive Production Systems
MS Project MS Outlook

Need 1 person! Need 1 person!


My Research: AI for Interactive Systems
Computational Complexity of AI for Interactive Systems

Previous result:

Generating a plan by reusing previous plans is


computationally harder than generating the plan from
the scratch
Therefore, it is better to generate plans from the scratch

New result:
No, since the assumptions of the previous result does not
hold for the main reuse algorithm

Potrebbero piacerti anche