Title: FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
1TODAYS CLASS WILL START AT 1202
YOU NEED TO PICK UP THE SYLLABUS, TODAYS CLASS
NOTES, A BLUE SHEET OF THICK PAPER, AND A MARKER
15-453
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
2YOU NEED
THE SYLLABUS
TODAYS CLASS NOTES
A BLUE SHEET OF PAPER
A MARKER
3TODAYS CLASS WILL START AT 1202
YOU NEED TO PICK UP THE SYLLABUS, TODAYS CLASS
NOTES, A BLUE SHEET OF THICK PAPER, AND A MARKER
15-453
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
4DONT FORGET
THE SYLLABUS
TODAYS CLASS NOTES
A BLUE SHEET OF PAPER
A MARKER
5TODAYS CLASS WILL START AT 1202
YOU NEED TO PICK UP THE SYLLABUS, TODAYS CLASS
NOTES, A BLUE SHEET OF THICK PAPER, AND A MARKER
15-453
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
6(No Transcript)
715-453
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
8Suppose A ? 1, 2, , 2n
with A n1
TRUE or FALSE There are always two numbers in A
such that one divides the other
9INSTRUCTORS
Manuel Blum
Lenore Blum
Luis von Ahn
10This class is about mathematical models of
computation
11WHY SHOULD I CARE?
WAYS OF THINKING
12WHY SHOULD I CARE?
THEORY CAN DRIVE PRACTICE
Mathematical models of computation predated
computers as we know them
13WHY SHOULD I CARE?
THIS STUFF IS USEFUL
PART 1
Automata and Languages
PART 2
Computability Theory
PART 3
Complexity and Applications
14(No Transcript)
15HOMEWORK
Homework will be assigned every Thursday and will
be due one week after at the beginning of class
You must list your collaborators and references
in every homework assignment
16COURSE PROJECT
Choose a (unique) topic
Learn about your topic
Actually write progress reports
Meet with an instructor once a month
Prepare a 10-minute presentation
17WWW.FLAC.WS
18Suppose A ? 1, 2, , 2n
with A n1
TRUE or FALSE There are always two numbers in A
such that one divides the other
TRUE
19HINT
THE PIGEONHOLE PRINCIPLE
If you put 6 pigeons in 5 holes then at least one
hole will have more than one pigeon
If there are more girls than guys and every girl
is dating a guy, there must be a guy thats
cheating
20HINT 2
Every integer a can be written as a 2km, where
m is an odd number
21Suppose A ? 1, 2, , 2n
with A n1
Write every number in A as a 2km, where m is an
odd number
between 1 and 2n-1
How many odd numbers in 1, , 2n-1?
n
Since A n1, there must be two numbers in A
with the same odd part
Say a1 and a2 have the same odd part m. Then a1
2im and a2 2jm, so one must divide the other
22This class will emphasize PROOFS
A good proof should be
Easy to understand
Correct
23We expect your proofs to have three levels
The first level should be a one-word or
one-phrase hint of the proof
(e.g. Proof by contradiction, Follows from
the pigeonhole principle)
The second level should be a short one-paragraph
description or longer hint
The third level should be the full proof
24DOUBLE STANDARDS?
During the lectures, my proofs will usually only
contain the first two levels and maybe part of
the third
Reasons
I have to keep you guys awake
I know my proofs are correct
25DETERMINISTIC FINITE AUTOMATA
2611
1
0
0,1
1
0111
111
1
0
0
1
The machine accepts a string if the process ends
in a double circle
27ANATOMY OF A DETERMINISTIC FINITE AUTOMATON
q1
q0
q2
The machine accepts a string if the process ends
in a double circle
start state (q0)
q3
28NOTATION
An alphabet S is a finite set (e.g., S 0,1)
A string over S is a finite-length sequence of
elements of S
For x a string, x is
the length of x
The unique string of length 0 will be denoted by
e and will be called the empty or null string
A language over S is a set of strings over S
29A finite automaton is a 5-tuple M (Q, S, ?, q0,
F)
Q is the set of states
S is the alphabet
? Q ? S ? Q is the transition function
q0 ? Q is the start state
F ? Q is the set of accept states
L(M) the language of machine M set of all
strings machine M accepts
30q0
0,1
L(M)
?
310
0
1
q0
q1
1
w w has an even number of 1s
L(M)
32Build an automaton that accepts all and only
those strings that contain 001
33A language is regular if it is recognized by a
deterministic finite automaton
L w w contains 001 is regular
L w w has an even number of 1s is regular
34UNION THEOREM
Given two languages, L1 and L2, define the union
of L1 and L2 as L1 ? L2 w w ? L1 or w ? L2
Theorem The union of two regular languages is
also a regular language
35Theorem The union of two regular languages is
also a regular language
Proof Let M1 (Q1, S, ?1, q0, F1) be finite
automaton for L1 and M2 (Q2, S, ?2, q0, F2)
be finite automaton for L2
1
2
We want to construct a finite automaton M (Q,
S, ?, q0, F) that recognizes L L1 ? L2
36Idea Run both M1 and M2 at the same time!
F (q1, q2) q1 ? F1 or q2 ? F2
?( (q1,q2), ?) (?1(q1, ?), ?2(q2, ?))
37Theorem The union of two regular languages is
also a regular language
381
q0,p0
q1,p0
1
0
0
0
0
1
q0,p1
q1,p1
1
39WWW.FLAC.WS
Read Chapters 0 and 1.1 of the book for next time