0% found this document useful (0 votes)
93 views24 pages

Introduction To Automata Theory: Reading: Chapter 1

This document provides an introduction to automata theory, including: - What automata theory is and examples of abstract computing devices or "machines" studied in this field. - Pioneers like Alan Turing who studied abstract machines called Turing machines. - The Chomsky hierarchy which classifies formal languages based on the type of grammars and automata used to describe them. - Key concepts in automata theory including alphabets, strings, languages, and the membership problem of determining if a string is in a given language. - Types of proofs used such as deductive, induction, contradiction, and techniques for proving "if and only if" statements.

Uploaded by

teritome
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
93 views24 pages

Introduction To Automata Theory: Reading: Chapter 1

This document provides an introduction to automata theory, including: - What automata theory is and examples of abstract computing devices or "machines" studied in this field. - Pioneers like Alan Turing who studied abstract machines called Turing machines. - The Chomsky hierarchy which classifies formal languages based on the type of grammars and automata used to describe them. - Key concepts in automata theory including alphabets, strings, languages, and the membership problem of determining if a string is in a given language. - Types of proofs used such as deductive, induction, contradiction, and techniques for proving "if and only if" statements.

Uploaded by

teritome
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 24

Introduction to Automata Theory

Reading: Chapter 1

What is Automata Theory?


Study of abstract computing devices, or machines Automaton = an abstract computing device

Note: A device need not even be a physical hardware! Find out what different models of machines can do and cannot do The theory of computation

A fundamental question in computer science:

Computability vs. Complexity


2

(A pioneer of automata theory)

Alan Turing (1912-1954)

Father of Modern Computer Science English mathematician Studied abstract machines called Turing machines even before computers existed Heard of the Turing test?

Theory of Computation: A Historical Perspective


1930s Alan Turing studies Turing machines Decidability Halting problem

1940-1950s Finite automata machines studied Noam Chomsky proposes the Chomsky Hierarchy for formal languages
1969 1970Cook introduces intractable problems or NP-Hard problems Modern computer science: compilers, computational & complexity theory evolve
4

Languages & Grammars

Or words

Languages: A language is a collection of sentences of finite length all constructed from a finite alphabet of symbols Grammars: A grammar can be regarded as a device that enumerates the sentences of a language - nothing more, nothing less

N. Chomsky, Information and Control, Vol 2, 1959

Image source: Nowak et al. Nature, vol 417, 2002

The Chomsky Hierachy


A containment hierarchy of classes of formal languages

Regular (DFA)

Contextfree (PDA)

Contextsensitive (LBA)

Recursivelyenumerable (TM)

The Central Concepts of Automata Theory

Alphabet
An alphabet is a finite, non-empty set of symbols We use the symbol (sigma) to denote an alphabet Examples:

Binary: = {0,1} All lower case letters: = {a,b,c,..z} Alphanumeric: = {a-z, A-Z, 0-9} DNA molecule letters: = {a,c,g,t}
8

Strings
A string or word is a finite sequence of symbols chosen from Empty string is (or epsilon)

Length of a string w, denoted by |w|, is equal to the number of (non- ) characters in the
string

E.g., x = 010100 x = 01 0 1 00

|x| = 6 |x| = ?

xy = concatentation of two strings x and y


9

Powers of an alphabet
Let be an alphabet.

k = the set of all strings of length k * = 0 U 1 U 2 U + = 1 U 2 U 3 U

10

Languages
L is a said to be a language over alphabet , only if L * this is because * is the set of all strings (of all possible length including 0) over the given alphabet Examples: 1. Let L be the language of all strings consisting of n 0s followed by n 1s: L = {,01,0011,000111,} 2. Let L be the language of all strings of with equal number of 0s and 1s: L = {,01,10,0011,1100,0101,1010,1001,} Definition:

denotes the Empty language

Let L = {}; Is L=?

NO
11

The Membership Problem


Given a string w *and a language L over , decide whether or not w L.

Example: Let w = 100011 Q) Is w the language of strings with equal number of 0s and 1s?
12

Finite Automata

Some Applications

Software for designing and checking the behavior of digital circuits Lexical analyzer of a typical compiler Software for scanning large bodies of text (e.g., web pages) for pattern finding Software for verifying systems of all types that have a finite number of states (e.g., stock market transaction, communication/network protocol)

13

Finite Automata : Examples


action

On/Off switch

state

Modeling recognition of the word then

Start state

Transition

Intermediate state

Final state
14

Structural expressions

Grammars Regular expressions

E.g., unix style to capture city names such as Palo Alto CA:

[A-Z][a-z]*([ ][A-Z][a-z]*)*[ ][A-Z][A-Z]

Start with a letter A string of other letters (possibly empty) Should end w/ 2-letter state code

Other space delimited words (part of city name)

15

Formal Proofs

16

Deductive Proofs
From the given statement(s) to a conclusion statement (what we want to prove) Logical progression by direct implications Example for parsing a statement: If y4, then 2yy2.
given
conclusion

(there are other ways of writing this).


17

Example: Deductive proof


Let Claim 1: If y4, then 2yy2. Let x be any number which is obtained by adding the squares of 4 positive integers.

Given x and assuming that Claim 1 is true, prove that 2xx2 Proof: 1) Given: x = a2 + b2 + c2 + d2 2) Given: a1, b1, c1, d1 3) a21, b21, c21, d21 (by 2) 4) x4 (by 1 & 3) 5) 2x x2 (by 4 and Claim 1) implies or follows
18

Quantifiers
For all or For every

Universal proofs Notation*=?

There exists

Used in existential proofs Notation*=?

Implication is denoted by =>


E.g., IF A THEN B can also be written as A=>B

*I

wasnt able to locate the symbol for these notation in powerpoint. Sorry! Please follow the standard notation for these quantifiers.

19

Proving techniques

By contradiction

Start with the statement contradictory to the given statement E.g., To prove (A => B), we start with:

(A and ~B)

and then show that could never happen


What if you want to prove that (A and B => C or D)?

By induction

(3 steps) Basis, inductive hypothesis, inductive step If A then B If ~B then ~A


20

By contrapositive statement

Proving techniques

By counter-example Show an example that disproves the claim Note: There is no such thing called a proof by example! So when asked to prove a claim, an example that satisfied that claim is not a proof

21

Different ways of saying the same thing

i. ii. iii. iv. v.

If H then C:
H implies C H => C C if H H only if C Whenever H holds, C follows

22

If-and-Only-If statements

A if and only if B

(A <==> B)

(if part) if B then A ( <= ) (only if part) A only if B ( => ) (same as if A then B) i.e., A iff B Theorem: Let x be a real number. Then floor of x = ceiling of x if and only if x is an integer. One for the if part & another for the only if part
23

If and only if is abbreviated as iff

Example:

Proofs for iff have two parts

Summary

Automata theory & a historical perspective Chomsky hierarchy Finite automata Alphabets, strings/words/sentences, languages Membership problem Proofs: Deductive, induction, contrapositive, contradiction, counterexample If and only if

Read chapter 1 for more examples and exercises Gradiance homework 1


24

You might also like