Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Efficient computation - Automata and Complexity Theory - Lecture Slides, Slides of Theory of Automata

Some concept of Automata and Complexity Theory are Administrivia, Closure Properties, Context-Free Grammars, Decision Properties, Deterministic Finite Automata, Intractable Problems, More Undecidable Problems. Main points of this lecture are: Efficient Computation, Undecidable, Decidable, Everything, Decidable Problems, Algorithm, Derivations, Path Reaches, Reject, Scheduling

Typology: Slides

2012/2013

Uploaded on 04/29/2013

juni
juni 🇮🇳

4

(17)

122 documents

1 / 21

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Efficient computation
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15

Partial preview of the text

Download Efficient computation - Automata and Complexity Theory - Lecture Slides and more Slides Theory of Automata in PDF only on Docsity!

Efficient computation

Why do we care about undecidability?

undecidable decidable

... pretty much everything else

L = {0 n 1 n : n > 0}

Scheduling

Can you schedule final exams so that there are no conflicts?

Say we have n exams, k slots (maybe n = 200, k = 10)

Exams → vertices

Slots → colors

Conflicts → edges

CSC 3230 CSC 2110

CSC 3130 CSC 3160 ...

Task: Assign one of k colors to the vertices so that no edge has both endpoints of same color

Scheduling algorithm

For every possible assignment of colors to vertices: Try this assignment If every edge has endpoints of different colors, accept If all colorings failed, reject

Task: Assign one of k colors to the vertices so that no edge has both endpoints of same color

CSC 3230 CSC 2110

CSC 3130 CSC 3160

...

Shades of decidability

L = {0 n 1 n : n > 0}

Sure, we can write a computer program...

...but what happens when we run it?

How fast?

L = {0 n 1 n : n > 0}

On input x : n := | x | if n is odd reject for i := 0 to n /2: if x (^) i ≠ 0 or x (^) n - i ≠ 1 reject otherwise accept

Is P a valid java program?

Can you get from point A to point B in 100 steps?

Option 1: (^) Try all derivations Option 2: (^) CYK algorithm Option 3: LR(1) algorithm

8

6 10 14

14

3

3

9 (^8 )

2 5 5

9 A B

For all paths out of point A of length at most 100 : Try this path If path reaches B , accept Otherwise, reject

Finding paths

Can you get from point A to point B in 1000 steps?

8

6 10 14

14

3

3

9 (^8 )

2 5 5

9 A B

For all paths out of point A of length at most 1000 : Try this path If path reaches B , accept Otherwise, reject

Is there a better way

to do this?

Yes! Dijkstra’s algorithm

Edsger Dijkstra (1930-2002)

Matching

For every possible pairing: If each pair is happy, accept If all pairings failed, reject

Can we do better?

Yes! Edmonds’ algorithm

Jack Edmonds

Some history

first electronic computer

UNIVAC

1950s

integrated circuits

The need for optimization

routing problems

how to route calls through the phone network?

packing problems

how many trucks do you need to fit all the boxes?

Fast algorithms

shortest

paths 1956

matchings

and a few more…

Proving theorems

Kurt Gödel

J. von Neumann

Princeton, 20 March 1956 Dear Mr. von Neumann: With the greatest sorrow I have learned of your illness. […] Since you now, as I hear, are feeling stronger, I would like to allow myself to write you about a mathematical problem: […] This would have consequences of the greatest importance. It would obviously mean that in spite of the undecidability of the Entscheidungsproblem, the mental work of a mathematician concerning Yes-or-No questions could be completely replaced by a machine.

Optimization versus proofs

• If we can find proofs quickly, then we can also

optimize quickly!

• Question: Can we color G

with so there are no

conflicts?

• Proof: We can, set

v 1 v (^2)

v (^3) v (^4)

v (^1) v 2 v 3 v (^4) (v1,R), (v2,Y), (v3,R), (v4,Y)

The Cook-Levin Theorem

• However,

Constraint satisfaction is no harder than

finding proofs quickly

It is no easier, either

Stephen Cook Leonid Levin

Cook 1971, Levin 1973