COSC 3340: Introduction to Theory of Computation

Slides:



Advertisements
Similar presentations
4b Lexical analysis Finite Automata
Advertisements

Lecture 16 Deterministic Turing Machine (DTM) Finite Control tape head.
Lecture 23UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 23.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
Lecture 6 Nondeterministic Finite Automata (NFA)
Theory Of Automata By Dr. MM Alam
Intro to DFAs Readings: Sipser 1.1 (pages 31-44) With basic background from Sipser 0.
Intro to DFAs Readings: Sipser 1.1 (pages 31-44) With basic background from Sipser 0.
Lecture 3UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 3.
Fall 2006Costas Busch - RPI1 Deterministic Finite Automata And Regular Languages.
1 Lecture 13 FSA’s –Defining FSA’s –Computing with FSA’s Defining L(M) –Defining language class LFSA.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Lecture 7UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 7.
Lecture 9UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 9.
Lecture 27UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 27.
Finite Automata Costas Busch - RPI.
Lecture 5UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 5.
Lecture 4UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 4.
1 Non-Deterministic Finite Automata. 2 Alphabet = Nondeterministic Finite Automaton (NFA)
Nondeterminism (Deterministic) FA required for every state q and every symbol  of the alphabet to have exactly one arrow out of q labeled . What happens.
Lecture 3 Graph Representation for Regular Expressions
Regular Languages A language is regular over  if it can be built from ;, {  }, and { a } for every a 2 , using operators union ( [ ), concatenation.
UofH - COSC Dr. Verma COSC 3340: Introduction to Theory of Computation Rakesh Verma Computer Science Department University of Houston URL:
Lecture 2UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 2.
Introduction to CS Theory Lecture 3 – Regular Languages Piotr Faliszewski
Fall 2006Costas Busch - RPI1 Deterministic Finite Automaton (DFA) Input Tape “Accept” or “Reject” String Finite Automaton Output.
Finite Automata – Definition and Examples Lecture 6 Section 1.1 Mon, Sep 3, 2007.
1 FSA’s –Defining FSA’s –Computing with FSA’s Defining L(M) –Defining language class LFSA –Comparing LFSA to set of solvable languages (REC)
Lecture 11UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 11.
Lecture 2 Overview Topics What I forgot from last lecture Proof techniques continued Alphabets, strings, languages Automata June 2, 2015 CSCE 355 Foundations.
Lecture 14UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 14.
Lecture 24UofH - COSC Dr. Verma 1 COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 24.
1 Turing Machines - Chap 8 Turing Machines Recursive and Recursively Enumerable Languages.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Costas Busch - LSU1 Deterministic Finite Automata And Regular Languages.
Theory of Computation Automata Theory Dr. Ayman Srour.
Theory of Languages and Automata By: Mojtaba Khezrian.
Fall 2004COMP 3351 Finite Automata. Fall 2004COMP 3352 Finite Automaton Input String Output String Finite Automaton.
Introduction to Automata Theory Theory of Computation Lecture 3 Tasneem Ghnaimat.
Deterministic Finite Automata And Regular Languages.
Lexical analysis Finite Automata
COSC 3340: Introduction to Theory of Computation
Lecture2 Regular Language
Non Deterministic Automata
Busch Complexity Lectures: Turing Machines
Deterministic Turing Machines
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Turing Machines 2nd 2017 Lecture 9.
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Deterministic Finite Automata And Regular Languages Prof. Busch - LSU.
COSC 3340: Introduction to Theory of Computation
CSE322 Definition and description of finite Automata
Non Deterministic Automata
Principles of Computing – UFCFA3-30-1
4b Lexical analysis Finite Automata
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
4b Lexical analysis Finite Automata
COSC 3340: Introduction to Theory of Computation
Chapter # 5 by Cohen (Cont…)
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Non Deterministic Automata
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
COSC 3340: Introduction to Theory of Computation
Presentation transcript:

COSC 3340: Introduction to Theory of Computation University of Houston Dr. Verma Lecture 2 Lecture 2 UofH - COSC 3340 - Dr. Verma

1st model -- Deterministic Finite Automaton (DFA) Read only Head Finite Control Lecture 2 UofH - COSC 3340 - Dr. Verma

DFA (contd.) The DFA has: a finite set of states 1 special state - initial state 0 or more special states - final states input alphabet transition table containing (state, symbol) -> next state Lecture 2 UofH - COSC 3340 - Dr. Verma

Informally -- How does a DFA work? An input string is placed on the tape (left-justified). DFA begins in the start state. Head placed on leftmost cell. DFA goes into a loop until the entire string is read. In each step, DFA consults a transition table and changes state based on (s, ) where s - current state  - symbol scanned by head Lecture 2 UofH - COSC 3340 - Dr. Verma

How does a DFA work? (contd.) After reading input string, if DFA state final, input accepted if DFA state not final, input rejected Language of DFA -- set of all strings accepted by DFA. Lecture 2 UofH - COSC 3340 - Dr. Verma

Pictorial representation of DFA (q,σ) -> q' Lecture 2 UofH - COSC 3340 - Dr. Verma

Example: Diagram of DFA L = {a2n + 1 | n >= 0} Answer: L = {a, aaa, aaaaa, ...} Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aaa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aaa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aaa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aaa Lecture 2 UofH - COSC 3340 - Dr. Verma

Formal definition of DFA DFA M = (Q, , , s, F) Where, Q is finite set of states  is input alphabet s  Q is initial state F  Q is set of final states : Q X  -> Q Lecture 2 UofH - COSC 3340 - Dr. Verma

Formal definition of L(M) L(M) - Language accepted by M Define *: *(q, ) = q *(q, wσ) = (*(q,w),σ) Definition: L(M) = { w in * | * (s,w) in F }. Lecture 2 UofH - COSC 3340 - Dr. Verma

Example: L(M) = {w in {a,b}* | w contains even no. of a's} Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step aa Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step ab Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step ab Lecture 2 UofH - COSC 3340 - Dr. Verma

JFLAP Step-By-Step ab Lecture 2 UofH - COSC 3340 - Dr. Verma

Given a language, how to define DFA? Creative process requiring you to: (i) Put yourself in DFA's shoes (ii) Find finite amount of info, based on which string accepted/rejected (iii) From step (ii), determine number of states and then transitions. Lecture 2 UofH - COSC 3340 - Dr. Verma

Regular Languages Definition: A Language is regular iff there is a DFA that accepts it. Examples:  {} * {w in {0,1}* | second symbol of w is a 1} Exercise {w in {0,1}* | second last symbol of w is a 1} Exercise {w in {0,1}* | w contains 010 as a substring} - (importance?) Lecture 2 UofH - COSC 3340 - Dr. Verma