Formal Languages and Automata
|
|
- Bennett Holmes
- 5 years ago
- Views:
Transcription
1 Mobile Computing and Software Engineering p. 1/3 Formal Languages and Automata Chapter 3 Regular languages and Regular Grammars Chuan-Ming Liu cmliu@csie.ntut.edu.tw Department of Computer Science and Information Engineering National Taipei University of Technology Taipei, TAIWAN
2 Mobile Computing and Software Engineering p. 2/3 Contents Regular Expressions Connection between Regular Expressions and Regular Languages Regular Grammars
3 Mobile Computing and Software Engineering p. 3/3 Regular Expressions Let Σ be a given alphabet. Then, 1, λ, and a Σ are all regular expressions. These are called primitive regular expression. 2 if r 1 and r 2 are regular expression, so are r 1 + r 2,r 1 r 2,r 1, and (r 1). 3 A string is a regular expression if and only if it can be derived from the primitive regular expressions by a finite number of applications of the rules in 2. Note that we use + to denote union, for concatenation, and for star-closure.
4 Mobile Computing and Software Engineering p. 4/3 Example 1 For Σ = {a, b, c}, the string is a regular expression. (a + b c) (c + )
5 Regular Expression Languages Let r be a regular expression. Then, the language L(r) is defined by the following rules: 1. is a regular expression denoting the empty set, 2. λ is a regular expression denoting {λ}, 3. For every a Σ, a is a regular expression denoting {a}. If r 1 and r 2 are regular expressions, then 4. L(r 1 + r 2 ) = L(r 1 ) L(r 2 ), 5. L(r 1 L 2 ) = L(r 1 )L(r 2 ), 6. L((r 1 )) = L(r 1 ), 7. L(r 1) = (L(r 1 )). Mobile Computing and Software Engineering p. 5/3
6 Mobile Computing and Software Engineering p. 6/3 Example 2 Exhibit the language L(a (a + b)) in set notation. L(a (a + b)) = L(a )L(a + b) = (L(a)) (L(a) L(b)) = {λ,a,aa,aaa,...}{a,b} = {a,aa,aaa,...,b,ab,aab,...}.
7 Mobile Computing and Software Engineering p. 7/3 Example 3 Problem: Find the language generated by the following regular expression where Σ = {a,b}. r = (a + b) (a + ab) Solution: It denotes the language L(r) = {a,bb,aa,abb,ba, bbb,...}.
8 Mobile Computing and Software Engineering p. 8/3 Example 4 Problem: Describe the language which has the following regular expression r = (aa) (bb) b. Solution: It denotes the set of all strings with an even number of a s followed by an odd number of b s; that is, L(r) = {a 2n b 2m+1 : n 0,m 0}.
9 Mobile Computing and Software Engineering p. 9/3 Example 5 Problem: For Σ = {0, 1}, give a regular expression r such that L(r) = {w Σ : w has at least one pair of Solution: consecutive zeros}. r = (0 + 1) 00(0 + 1).
10 Mobile Computing and Software Engineering p. 10/3 Example 6 Problem: Find a regular expression for the language L = {w {0, 1} : w has no pair of consecutive zeros}. Solution: r = (1 011 ) (0 + λ) + 1 (0 + λ). An alternative shorter expression r = (1 + 01) (0 + λ). Note: Two regular expressions are equivalent if they denote the same language.
11 Mobile Computing and Software Engineering p. 11/3 Contents Regular Expressions Connection between Regular Expressions and Regular Languages Regular Grammars
12 Mobile Computing and Software Engineering p. 12/3 Regular Expressions and Languages The two concepts of regular expression and regular language are essentially the same: for every regular language there is a regular expression. for every regular expression there is a regular language. Note: a regular language a dfa accepts it an nfa accepts it
13 Mobile Computing and Software Engineering p. 13/3 Theorem Let r be a regular expression. Then there exists some nondeterministic finite automaton that accepts L(r). Consequently, L(r) is a regular language. Proof: To show L(r) is a regular language, we need to find an nfa which accepts L(r). We will use the definition of the languages associated with regular expressions. Note: The basic idea is to construct an nfa which mimics the process of producing L(r) for a given regular expression.
14 Mobile Computing and Software Engineering p. 14/3 Constructing an Nfa (1) (1) Consider the rules for the termination conditions of the recursion on the regular expression. For each of the simple regular expressions, λ, and a Σ, we can easily construct an nfa which accepts it. : λ: a:
15 Mobile Computing and Software Engineering p. 15/3 Constructing an Nfa (2) (2) We now consider the recursion part of the definition for L(r). Let r 1 and r 2 be two arbitrary regular expressions and suppose automata M(r 1 ) and M(r 2 ) accept L(r 1 ) and L(r 2 ), respectively. Then, using the state diagrams, we can have the following conceptual state diagrams:
16 Mobile Computing and Software Engineering p. 16/3 Constructing an Nfa (3) (3) Construct the automata for the regular expressions r 1 + r 2, r 1 r 2, and r 1: For L(r 1 + r 2 ): M(r 1 ) M(r 2 ) Note: The original final states are dismissed.
17 Mobile Computing and Software Engineering p. 17/3 Constructing an Nfa (4) For L(r 1 r 2 ):
18 Mobile Computing and Software Engineering p. 18/3 Constructing an Nfa (5) For L(r 1): Using these fundamental components, we can build automata for arbitrary complex regular expressions.
19 Example 7 Problem: Find an nfa that accepts L(r), where Solution: r = (a + bb) (ba + λ) L(a + bb) L(ba + λ) = L((a + bb) (ba + λ)) Mobile Computing and Software Engineering p. 19/3
20 Mobile Computing and Software Engineering p. 20/3 Generalized Transition Graphs We now consider that for every regular language, there exists a corresponding regular expression. Definition: A generalized transition graph (GTG) is a transition graph whose edges are labeled with regular expressions; otherwise, it is the same as the usual transition graph. Note: The strings of the labels are subsets of the language accepted by the GTG.
21 Mobile Computing and Software Engineering p. 21/3 Example GTG L(a + a (a + b)c )
22 Mobile Computing and Software Engineering p. 22/3 Complete GTG s Observation: The state diagram of an nfa is a GTG. = for every regular language, there exists a GTG that accepts it. Note: The language accepted by an nfa is regular. Hence, the observation says, in some sense, that the language accepted by a GTG is regular. Definition: A complete GTG is a graph in which all edges are present.
23 Mobile Computing and Software Engineering p. 23/3 Example Complete GTG (a) A GTG (b) The complete GTG of (a)
24 Mobile Computing and Software Engineering p. 24/3 Two State Complete GTG s The regular expression r = r 1 r 2 (r 4 + r 3 r 1r 2 ) covers all possible paths and so is the correct regular expression associated with the graph.
25 Mobile Computing and Software Engineering p. 25/3 Example 8 Note: When a GTG has more than two states, we can find an equivalent GTG by renaming one state at a time. =
26 Mobile Computing and Software Engineering p. 26/3 Example 9 Problem:Find a regular expression for the language L = {w {a,b} : n a (w) is even and n b (w) is odd}, where n a (w) and n b (w) are the number of occurrences of a and b in w respectively.
27 Mobile Computing and Software Engineering p. 27/3 Theorem Let L be a regular language. Then there exists a regular expression r such that L = L(r). Proof: L is regular an nfa accepting it a GTG to present it can find a regular expression for it.
28 Mobile Computing and Software Engineering p. 28/3 Contents Regular Expressions Connection between Regular Expressions and Regular Languages Regular Grammars
29 Mobile Computing and Software Engineering p. 29/3 Regular Grammars We have learned that a regular language can be represented by an nfa (or a dfa) a regular expression We now discuss a third way to describe regular languages grammars
30 Mobile Computing and Software Engineering p. 30/3 Definitions A grammar G = (V,T,s,P) is said to be right-linear (left-linear) if all productions are of the form A xb (A Bx) or A x, where A,B V and x T. A regular grammar (or type-3 grammar) is one that is either right-linear or left-linear. Note: At most one variable appears on the right side of any production.
31 Mobile Computing and Software Engineering p. 31/3 Example 10 and The grammar G 1 = ({S}, {a,b},s,p 1 ) with P 1 given as S abs a is right-linear. 2. The grammar G 2 = ({S,S 1,S 2 }, {a,b},s,p 2 ) with productions is left-linear. S S 1 ab, S 1 S 1 ab S 2, S 2 a,
32 Mobile Computing and Software Engineering p. 32/3 Example 12 The grammar G = ({S,A,B}, {a,b},s,p) with productions is not regular. S A, A ab λ, B Ab, Note: The grammar is an instance of a linear grammar.
33 Mobile Computing and Software Engineering p. 33/3 Linear Grammar Definition: A linear grammar is a grammar in which at most one variable can occur on the right side of any production, without restriction on the position of this variable. Note: A regular grammar is always linear, but not all linear grammars are regular.
34 Mobile Computing and Software Engineering p. 34/3 Theorem Let G = (V, T, S, P) be a right-linear grammar. Then L(G) is a regular language. proof: To prove this, we consider to construct an nfa M that mimics the derivations of a right-linear grammar: Let M = (Q, Σ,δ,q 0,F) where Σ = T, q 0 = S, 1. Q= the set of variables in all productions, plus an additional state A; { {S,A} if S λ exists; 2. F =, {A} O.W. 3. δ(b,a) contains all C s if B ac and A δ(b,a) if B C.
35 Mobile Computing and Software Engineering p. 35/3 Example 13 Problem: Construct a finite automaton that accepts the language generated by the following grammar Solution: V 0 = a 1 V 1 V 1 = abv 0 b
36 Mobile Computing and Software Engineering p. 36/3 Theorem If L is a regular language on the alphabet Σ, then there exists a right-linear grammar G = (V, Σ, S, P). proof: W.L.O.G., let M = (Q, Σ,δ,q 0,F) be a dfa that accepts L. We construct a right-linear grammar G = (Q, Σ,q 0,P) as follows. 1. B ac P if δ(b,a) = C, 2. B C P if δ(b,a) = C and C F. We then need to show that (1) T(M) L(G) and (2) L(G) T(M).
37 Mobile Computing and Software Engineering p. 37/3 Example 14 Problem: Construct a right-linear grammar for L(aab a). Solution: G = ({q 0,q 1,q 2,q 3 }, {a,b},q 0,P ) where P includes: 1. q 0 aq 1, 2. q 1 aq 2, 3. q 2 bq 2,
38 Mobile Computing and Software Engineering p. 38/3 Theorems L is regular there exists a left-linear grammar G such that L = L(G). L is regular there exists a regular grammar G such that L = L(G).
Regular Languages and Regular Expressions
Regular Languages and Regular Expressions According to our definition, a language is regular if there exists a finite state automaton that accepts it. Therefore every regular language can be described
More informationRegular Expressions. Lecture 10 Sections Robb T. Koether. Hampden-Sydney College. Wed, Sep 14, 2016
Regular Expressions Lecture 10 Sections 3.1-3.2 Robb T. Koether Hampden-Sydney College Wed, Sep 14, 2016 Robb T. Koether (Hampden-Sydney College) Regular Expressions Wed, Sep 14, 2016 1 / 23 Outline 1
More informationDecidable Problems. We examine the problems for which there is an algorithm.
Decidable Problems We examine the problems for which there is an algorithm. Decidable Problems A problem asks a yes/no question about some input. The problem is decidable if there is a program that always
More informationCS402 Theory of Automata Solved Subjective From Midterm Papers. MIDTERM SPRING 2012 CS402 Theory of Automata
Solved Subjective From Midterm Papers Dec 07,2012 MC100401285 Moaaz.pk@gmail.com Mc100401285@gmail.com PSMD01 MIDTERM SPRING 2012 Q. Point of Kleen Theory. Answer:- (Page 25) 1. If a language can be accepted
More informationFinite Automata. Dr. Nadeem Akhtar. Assistant Professor Department of Computer Science & IT The Islamia University of Bahawalpur
Finite Automata Dr. Nadeem Akhtar Assistant Professor Department of Computer Science & IT The Islamia University of Bahawalpur PhD Laboratory IRISA-UBS University of South Brittany European University
More informationDr. D.M. Akbar Hussain
1 2 Compiler Construction F6S Lecture - 2 1 3 4 Compiler Construction F6S Lecture - 2 2 5 #include.. #include main() { char in; in = getch ( ); if ( isalpha (in) ) in = getch ( ); else error (); while
More informationChapter Seven: Regular Expressions
Chapter Seven: Regular Expressions Regular Expressions We have seen that DFAs and NFAs have equal definitional power. It turns out that regular expressions also have exactly that same definitional power:
More informationDVA337 HT17 - LECTURE 4. Languages and regular expressions
DVA337 HT17 - LECTURE 4 Languages and regular expressions 1 SO FAR 2 TODAY Formal definition of languages in terms of strings Operations on strings and languages Definition of regular expressions Meaning
More informationMultiple Choice Questions
Techno India Batanagar Computer Science and Engineering Model Questions Subject Name: Formal Language and Automata Theory Subject Code: CS 402 Multiple Choice Questions 1. The basic limitation of an FSM
More informationLast lecture CMSC330. This lecture. Finite Automata: States. Finite Automata. Implementing Regular Expressions. Languages. Regular expressions
Last lecture CMSC330 Finite Automata Languages Sets of strings Operations on languages Regular expressions Constants Operators Precedence 1 2 Finite automata States Transitions Examples Types This lecture
More informationFormal Languages and Compilers Lecture IV: Regular Languages and Finite. Finite Automata
Formal Languages and Compilers Lecture IV: Regular Languages and Finite Automata Free University of Bozen-Bolzano Faculty of Computer Science POS Building, Room: 2.03 artale@inf.unibz.it http://www.inf.unibz.it/
More informationCompiler Construction
Compiler Construction Exercises 1 Review of some Topics in Formal Languages 1. (a) Prove that two words x, y commute (i.e., satisfy xy = yx) if and only if there exists a word w such that x = w m, y =
More information1. (10 points) Draw the state diagram of the DFA that recognizes the language over Σ = {0, 1}
CSE 5 Homework 2 Due: Monday October 6, 27 Instructions Upload a single file to Gradescope for each group. should be on each page of the submission. All group members names and PIDs Your assignments in
More information1. Draw the state graphs for the finite automata which accept sets of strings composed of zeros and ones which:
P R O B L E M S Finite Autom ata. Draw the state graphs for the finite automata which accept sets of strings composed of zeros and ones which: a) Are a multiple of three in length. b) End with the string
More informationQUESTION BANK. Formal Languages and Automata Theory(10CS56)
QUESTION BANK Formal Languages and Automata Theory(10CS56) Chapter 1 1. Define the following terms & explain with examples. i) Grammar ii) Language 2. Mention the difference between DFA, NFA and εnfa.
More informationSkyup's Media. PART-B 2) Construct a Mealy machine which is equivalent to the Moore machine given in table.
Code No: XXXXX JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY, HYDERABAD B.Tech II Year I Semester Examinations (Common to CSE and IT) Note: This question paper contains two parts A and B. Part A is compulsory
More informationVALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III Year, V Semester Section : CSE - 1 & 2 Subject Code : CS6503 Subject
More informationECS 120 Lesson 7 Regular Expressions, Pt. 1
ECS 120 Lesson 7 Regular Expressions, Pt. 1 Oliver Kreylos Friday, April 13th, 2001 1 Outline Thus far, we have been discussing one way to specify a (regular) language: Giving a machine that reads a word
More informationCT32 COMPUTER NETWORKS DEC 2015
Q.2 a. Using the principle of mathematical induction, prove that (10 (2n-1) +1) is divisible by 11 for all n N (8) Let P(n): (10 (2n-1) +1) is divisible by 11 For n = 1, the given expression becomes (10
More informationR10 SET a) Construct a DFA that accepts an identifier of a C programming language. b) Differentiate between NFA and DFA?
R1 SET - 1 1. a) Construct a DFA that accepts an identifier of a C programming language. b) Differentiate between NFA and DFA? 2. a) Design a DFA that accepts the language over = {, 1} of all strings that
More informationQUESTION BANK. Unit 1. Introduction to Finite Automata
QUESTION BANK Unit 1 Introduction to Finite Automata 1. Obtain DFAs to accept strings of a s and b s having exactly one a.(5m )(Jun-Jul 10) 2. Obtain a DFA to accept strings of a s and b s having even
More informationUNIT I PART A PART B
OXFORD ENGINEERING COLLEGE (NAAC ACCREDITED WITH B GRADE) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS YEAR/SEM: III/V STAFF NAME: Dr. Sangeetha Senthilkumar SUB.CODE: CS6503 SUB.NAME:
More informationLearn Smart and Grow with world
Learn Smart and Grow with world All Department Smart Study Materials Available Smartkalvi.com TABLE OF CONTENTS S.No DATE TOPIC PAGE NO. UNIT-I FINITE AUTOMATA 1 Introduction 1 2 Basic Mathematical Notation
More informationChapter Seven: Regular Expressions. Formal Language, chapter 7, slide 1
Chapter Seven: Regular Expressions Formal Language, chapter 7, slide The first time a young student sees the mathematical constant π, it looks like just one more school artifact: one more arbitrary symbol
More informationRegular Languages (14 points) Solution: Problem 1 (6 points) Minimize the following automaton M. Show that the resulting DFA is minimal.
Regular Languages (14 points) Problem 1 (6 points) inimize the following automaton Show that the resulting DFA is minimal. Solution: We apply the State Reduction by Set Partitioning algorithm (särskiljandealgoritmen)
More informationTOPIC PAGE NO. UNIT-I FINITE AUTOMATA
TABLE OF CONTENTS SNo DATE TOPIC PAGE NO UNIT-I FINITE AUTOMATA 1 Introduction 1 2 Basic Mathematical Notation Techniques 3 3 Finite State systems 4 4 Basic Definitions 6 5 Finite Automaton 7 6 DFA NDFA
More information(a) R=01[((10)*+111)*+0]*1 (b) ((01+10)*00)*. [8+8] 4. (a) Find the left most and right most derivations for the word abba in the grammar
Code No: R05310501 Set No. 1 III B.Tech I Semester Regular Examinations, November 2008 FORMAL LANGUAGES AND AUTOMATA THEORY (Computer Science & Engineering) Time: 3 hours Max Marks: 80 Answer any FIVE
More informationAmbiguous Grammars and Compactification
Ambiguous Grammars and Compactification Mridul Aanjaneya Stanford University July 17, 2012 Mridul Aanjaneya Automata Theory 1/ 44 Midterm Review Mathematical Induction and Pigeonhole Principle Finite Automata
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Today's learning goals Sipser Ch 1.2, 1.3 Design NFA recognizing a given language Convert an NFA (with or without
More informationName: Finite Automata
Unit No: I Name: Finite Automata What is TOC? In theoretical computer science, the theory of computation is the branch that deals with whether and how efficiently problems can be solved on a model of computation,
More informationUNION-FREE DECOMPOSITION OF REGULAR LANGUAGES
UNION-FREE DECOMPOSITION OF REGULAR LANGUAGES Thesis submitted in partial fulfillment of the requirements for the award of degree of Master of Engineering in Computer Science and Engineering Submitted
More informationClosure Properties of CFLs; Introducing TMs. CS154 Chris Pollett Apr 9, 2007.
Closure Properties of CFLs; Introducing TMs CS154 Chris Pollett Apr 9, 2007. Outline Closure Properties of Context Free Languages Algorithms for CFLs Introducing Turing Machines Closure Properties of CFL
More informationJNTUWORLD. Code No: R
Code No: R09220504 R09 SET-1 B.Tech II Year - II Semester Examinations, April-May, 2012 FORMAL LANGUAGES AND AUTOMATA THEORY (Computer Science and Engineering) Time: 3 hours Max. Marks: 75 Answer any five
More information8 ε. Figure 1: An NFA-ǫ
0 1 2 3 4 a 6 5 7 8 9 10 LECTURE 27 Figure 1: An FA-ǫ 12.1 ǫ Transitions In all automata that we have seen so far, every time that it has to change from one state to another, it must use one input symol.
More informationLECTURE NOTES THEORY OF COMPUTATION
LECTURE NOTES ON THEORY OF COMPUTATION P Anjaiah Assistant Professor Ms. B Ramyasree Assistant Professor Ms. E Umashankari Assistant Professor Ms. A Jayanthi Assistant Professor INSTITUTE OF AERONAUTICAL
More informationRegular Languages. Regular Language. Regular Expression. Finite State Machine. Accepts
Regular Languages L Regular Language Regular Expression Accepts Finite State Machine Regular Expressions The regular expressions over an alphabet are all and only the strings that can be obtained as follows:
More informationLECTURE NOTES THEORY OF COMPUTATION
LECTURE NOTES ON THEORY OF COMPUTATION Dr. K Rajendra Prasad Professor Ms. N Mamtha Assistant Professor Ms. S Swarajya Lakshmi Assistant Professor Mr. D Abdulla Assistant Professor INSTITUTE OF AERONAUTICAL
More informationAUTOMATA THEORY AND COMPUTABILITY
AUTOMATA THEORY AND COMPUTABILITY QUESTION BANK Module 1 : Introduction to theory of computation and FSM Objective: Upon the completion of this chapter you will be able to Define Finite automata, Basic
More informationAutomating Construction of Lexers
Automating Construction of Lexers Regular Expression to Programs Not all regular expressions are simple. How can we write a lexer for (a*b aaa)? Tokenizing aaaab Vs aaaaaa Regular Expression Finite state
More informationDecision Properties for Context-free Languages
Previously: Decision Properties for Context-free Languages CMPU 240 Language Theory and Computation Fall 2018 Context-free languages Pumping Lemma for CFLs Closure properties for CFLs Today: Assignment
More informationFinite Automata Part Three
Finite Automata Part Three Friday Four Square! Today at 4:15PM, Outside Gates. Announcements Problem Set 4 due right now. Problem Set 5 out, due next Friday, November 2. Play around with finite automata
More informationLexical Analysis. Prof. James L. Frankel Harvard University
Lexical Analysis Prof. James L. Frankel Harvard University Version of 5:37 PM 30-Jan-2018 Copyright 2018, 2016, 2015 James L. Frankel. All rights reserved. Regular Expression Notation We will develop a
More information9.5 Equivalence Relations
9.5 Equivalence Relations You know from your early study of fractions that each fraction has many equivalent forms. For example, 2, 2 4, 3 6, 2, 3 6, 5 30,... are all different ways to represent the same
More informationConverting a DFA to a Regular Expression JP
Converting a DFA to a Regular Expression JP Prerequisite knowledge: Regular Languages Deterministic Finite Automata Nondeterministic Finite Automata Regular Expressions Conversion of Regular Expression
More informationMidterm Exam II CIS 341: Foundations of Computer Science II Spring 2006, day section Prof. Marvin K. Nakayama
Midterm Exam II CIS 341: Foundations of Computer Science II Spring 2006, day section Prof. Marvin K. Nakayama Print family (or last) name: Print given (or first) name: I have read and understand all of
More information(Refer Slide Time: 0:19)
Theory of Computation. Professor somenath Biswas. Department of Computer Science & Engineering. Indian Institute of Technology, Kanpur. Lecture-15. Decision Problems for Regular Languages. (Refer Slide
More informationLanguages and Compilers
Principles of Software Engineering and Operational Systems Languages and Compilers SDAGE: Level I 2012-13 3. Formal Languages, Grammars and Automata Dr Valery Adzhiev vadzhiev@bournemouth.ac.uk Office:
More informationFormal Languages and Grammars. Chapter 2: Sections 2.1 and 2.2
Formal Languages and Grammars Chapter 2: Sections 2.1 and 2.2 Formal Languages Basis for the design and implementation of programming languages Alphabet: finite set Σ of symbols String: finite sequence
More informationTheory Bridge Exam Example Questions Version of June 6, 2008
Theory Bridge Exam Example Questions Version of June 6, 2008 This is a collection of sample theory bridge exam questions. This is just to get some idea of the format of the bridge exam and the level of
More information3 rd Year - Computer Science and Engineering,
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING 3 rd Year - Computer Science and Engineering, 5th Semester Theory of Computation QUESTION BANK 2 Marks Question and Answer 1. Define set. A set is a collection
More informationZhizheng Zhang. Southeast University
Zhizheng Zhang Southeast University 2016/10/5 Lexical Analysis 1 1. The Role of Lexical Analyzer 2016/10/5 Lexical Analysis 2 2016/10/5 Lexical Analysis 3 Example. position = initial + rate * 60 2016/10/5
More informationHKN CS 374 Midterm 1 Review. Tim Klem Noah Mathes Mahir Morshed
HKN CS 374 Midterm 1 Review Tim Klem Noah Mathes Mahir Morshed Midterm topics It s all about recognizing sets of strings! 1. String Induction 2. Regular languages a. DFA b. NFA c. Regular expressions 3.
More informationFinite automata. We have looked at using Lex to build a scanner on the basis of regular expressions.
Finite automata We have looked at using Lex to build a scanner on the basis of regular expressions. Now we begin to consider the results from automata theory that make Lex possible. Recall: An alphabet
More informationCOMP-421 Compiler Design. Presented by Dr Ioanna Dionysiou
COMP-421 Compiler Design Presented by Dr Ioanna Dionysiou Administrative! [ALSU03] Chapter 3 - Lexical Analysis Sections 3.1-3.4, 3.6-3.7! Reading for next time [ALSU03] Chapter 3 Copyright (c) 2010 Ioanna
More informationActually talking about Turing machines this time
Actually talking about Turing machines this time 10/25/17 (Using slides adapted from the book) Administrivia HW due now (Pumping lemma for context-free languages) HW due Friday (Building TMs) Exam 2 out
More informationComplexity Theory. Compiled By : Hari Prasad Pokhrel Page 1 of 20. ioenotes.edu.np
Chapter 1: Introduction Introduction Purpose of the Theory of Computation: Develop formal mathematical models of computation that reflect real-world computers. Nowadays, the Theory of Computation can be
More informationAutomata & languages. A primer on the Theory of Computation. The imitation game (2014) Benedict Cumberbatch Alan Turing ( ) Laurent Vanbever
Automata & languages A primer on the Theory of Computation The imitation game (24) Benedict Cumberbatch Alan Turing (92-954) Laurent Vanbever www.vanbever.eu ETH Zürich (D-ITET) September, 2 27 Brief CV
More informationOutline. 1 Scanning Tokens. 2 Regular Expresssions. 3 Finite State Automata
Outline 1 2 Regular Expresssions Lexical Analysis 3 Finite State Automata 4 Non-deterministic (NFA) Versus Deterministic Finite State Automata (DFA) 5 Regular Expresssions to NFA 6 NFA to DFA 7 8 JavaCC:
More informationCMPSCI 250: Introduction to Computation. Lecture 20: Deterministic and Nondeterministic Finite Automata David Mix Barrington 16 April 2013
CMPSCI 250: Introduction to Computation Lecture 20: Deterministic and Nondeterministic Finite Automata David Mix Barrington 16 April 2013 Deterministic and Nondeterministic Finite Automata Deterministic
More informationI have read and understand all of the instructions below, and I will obey the Academic Honor Code.
Midterm Exam CS 341-451: Foundations of Computer Science II Fall 2014, elearning section Prof. Marvin K. Nakayama Print family (or last) name: Print given (or first) name: I have read and understand all
More informationNondeterministic Finite Automata (NFA): Nondeterministic Finite Automata (NFA) states of an automaton of this kind may or may not have a transition for each symbol in the alphabet, or can even have multiple
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 11 Ana Bove April 26th 2018 Recap: Regular Languages Decision properties of RL: Is it empty? Does it contain this word? Contains
More informationLexical Analysis 1 / 52
Lexical Analysis 1 / 52 Outline 1 Scanning Tokens 2 Regular Expresssions 3 Finite State Automata 4 Non-deterministic (NFA) Versus Deterministic Finite State Automata (DFA) 5 Regular Expresssions to NFA
More informationFinite Automata Part Three
Finite Automata Part Three Recap from Last Time A language L is called a regular language if there exists a DFA D such that L( D) = L. NFAs An NFA is a Nondeterministic Finite Automaton Can have missing
More informationCMPSCI 250: Introduction to Computation. Lecture #28: Regular Expressions and Languages David Mix Barrington 2 April 2014
CMPSCI 250: Introduction to Computation Lecture #28: Regular Expressions and Languages David Mix Barrington 2 April 2014 Regular Expressions and Languages Regular Expressions The Formal Inductive Definition
More information1.3 Functions and Equivalence Relations 1.4 Languages
CSC4510 AUTOMATA 1.3 Functions and Equivalence Relations 1.4 Languages Functions and Equivalence Relations f : A B means that f is a function from A to B To each element of A, one element of B is assigned
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 3.2, 3.3 Define variants of TMs Enumerators Multi-tape TMs Nondeterministic TMs
More informationUniversity of Nevada, Las Vegas Computer Science 456/656 Fall 2016
University of Nevada, Las Vegas Computer Science 456/656 Fall 2016 The entire examination is 925 points. The real final will be much shorter. Name: No books, notes, scratch paper, or calculators. Use pen
More informationAutomata Theory CS S-FR Final Review
Automata Theory CS411-2015S-FR Final Review David Galles Department of Computer Science University of San Francisco FR-0: Sets & Functions Sets Membership: a?{a,b,c} a?{b,c} a?{b,{a,b,c},d} {a,b,c}?{b,{a,b,c},d}
More informationFormal Languages and Compilers Lecture VI: Lexical Analysis
Formal Languages and Compilers Lecture VI: Lexical Analysis Free University of Bozen-Bolzano Faculty of Computer Science POS Building, Room: 2.03 artale@inf.unibz.it http://www.inf.unibz.it/ artale/ Formal
More informationCSE 431S Scanning. Washington University Spring 2013
CSE 431S Scanning Washington University Spring 2013 Regular Languages Three ways to describe regular languages FSA Right-linear grammars Regular expressions Regular Expressions A regular expression is
More informationTheory of Computation Dr. Weiss Extra Practice Exam Solutions
Name: of 7 Theory of Computation Dr. Weiss Extra Practice Exam Solutions Directions: Answer the questions as well as you can. Partial credit will be given, so show your work where appropriate. Try to be
More informationFormal Grammars and Abstract Machines. Sahar Al Seesi
Formal Grammars and Abstract Machines Sahar Al Seesi What are Formal Languages Describing the sentence structure of a language in a formal way Used in Natural Language Processing Applications (translators,
More informationCS402 - Theory of Automata FAQs By
CS402 - Theory of Automata FAQs By Define the main formula of Regular expressions? Define the back ground of regular expression? Regular expressions are a notation that you can think of similar to a programming
More informationLexical Analysis. Implementation: Finite Automata
Lexical Analysis Implementation: Finite Automata Outline Specifying lexical structure using regular expressions Finite automata Deterministic Finite Automata (DFAs) Non-deterministic Finite Automata (NFAs)
More informationCHAPTER 8. Copyright Cengage Learning. All rights reserved.
CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation
More informationCIT3130: Theory of Computation. Regular languages
ƒ CIT3130: Theory of Computation Regular languages ( M refers to the first edition of Martin and H to IALC by Hopcroft et al.) Definitions of regular expressions and regular languages: A regular expression
More information2. Lexical Analysis! Prof. O. Nierstrasz!
2. Lexical Analysis! Prof. O. Nierstrasz! Thanks to Jens Palsberg and Tony Hosking for their kind permission to reuse and adapt the CS132 and CS502 lecture notes.! http://www.cs.ucla.edu/~palsberg/! http://www.cs.purdue.edu/homes/hosking/!
More informationCSE450. Translation of Programming Languages. Lecture 20: Automata and Regular Expressions
CSE45 Translation of Programming Languages Lecture 2: Automata and Regular Expressions Finite Automata Regular Expression = Specification Finite Automata = Implementation A finite automaton consists of:
More informationIntegers and Mathematical Induction
IT Program, NTUT, Fall 07 Integers and Mathematical Induction Chuan-Ming Liu Computer Science and Information Engineering National Taipei University of Technology TAIWAN 1 Learning Objectives Learn about
More information1. (a) What are the closure properties of Regular sets? Explain. (b) Briefly explain the logical phases of a compiler model. [8+8]
Code No: R05311201 Set No. 1 1. (a) What are the closure properties of Regular sets? Explain. (b) Briefly explain the logical phases of a compiler model. [8+8] 2. Compute the FIRST and FOLLOW sets of each
More informationCS5371 Theory of Computation. Lecture 8: Automata Theory VI (PDA, PDA = CFG)
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG) Objectives Introduce Pushdown Automaton (PDA) Show that PDA = CFG In terms of descriptive power Pushdown Automaton (PDA) Roughly
More informationAlphabets, strings and formal. An introduction to information representation
Alphabets, strings and formal languages An introduction to information representation 1 Symbols Definition: A symbol is an object endowed with a denotation (i.e. literal meaning) Examples: Variables are
More informationThe Turing Machine. Unsolvable Problems. Undecidability. The Church-Turing Thesis (1936) Decision Problem. Decision Problems
The Turing Machine Unsolvable Problems Motivating idea Build a theoretical a human computer Likened to a human with a paper and pencil that can solve problems in an algorithmic way The theoretical machine
More informationCS 403 Compiler Construction Lecture 3 Lexical Analysis [Based on Chapter 1, 2, 3 of Aho2]
CS 403 Compiler Construction Lecture 3 Lexical Analysis [Based on Chapter 1, 2, 3 of Aho2] 1 What is Lexical Analysis? First step of a compiler. Reads/scans/identify the characters in the program and groups
More informationRecursively Defined Functions
Section 5.3 Recursively Defined Functions Definition: A recursive or inductive definition of a function consists of two steps. BASIS STEP: Specify the value of the function at zero. RECURSIVE STEP: Give
More informationNormal Forms for CFG s. Eliminating Useless Variables Removing Epsilon Removing Unit Productions Chomsky Normal Form
Normal Forms for CFG s Eliminating Useless Variables Removing Epsilon Removing Unit Productions Chomsky Normal Form 1 Variables That Derive Nothing Consider: S -> AB, A -> aa a, B -> AB Although A derives
More informationT.E. (Computer Engineering) (Semester I) Examination, 2013 THEORY OF COMPUTATION (2008 Course)
*4459255* [4459] 255 Seat No. T.E. (Computer Engineering) (Semester I) Examination, 2013 THEY OF COMPUTATION (2008 Course) Time : 3 Hours Max. Marks : 100 Instructions : 1) Answers to the two Sections
More informationRegular Expressions. Chapter 6
Regular Expressions Chapter 6 Regular Languages Generates Regular Language Regular Expression Recognizes or Accepts Finite State Machine Stephen Cole Kleene 1909 1994, mathematical logician One of many
More informationUNIT -2 LEXICAL ANALYSIS
OVER VIEW OF LEXICAL ANALYSIS UNIT -2 LEXICAL ANALYSIS o To identify the tokens we need some method of describing the possible tokens that can appear in the input stream. For this purpose we introduce
More informationwhere is the transition function, Pushdown Automata is the set of accept states. is the start state, and is the set of states, is the input alphabet,
!# #! + Pushdown utomata CS5 ecture Pushdown utomata where pushdown automaton is a 6tuple are finite sets is the set of states is the input alphabet is the stack alphabet is the transition function is
More informationFAdo: Interactive Tools for Learning Formal Computational Models
FAdo: Interactive Tools for Learning Formal Computational Models Rogério Reis Nelma Moreira DCC-FC& LIACC, Universidade do Porto R. do Campo Alegre 823, 4150 Porto, Portugal {rvr,nam}@ncc.up.pt Abstract
More information14.1 Encoding for different models of computation
Lecture 14 Decidable languages In the previous lecture we discussed some examples of encoding schemes, through which various objects can be represented by strings over a given alphabet. We will begin this
More informationImplementation of Lexical Analysis
Implementation of Lexical Analysis Lecture 4 (Modified by Professor Vijay Ganesh) Tips on Building Large Systems KISS (Keep It Simple, Stupid!) Don t optimize prematurely Design systems that can be tested
More informationlec3:nondeterministic finite state automata
lec3:nondeterministic finite state automata 1 1.introduction Nondeterminism is a useful concept that has great impact on the theory of computation. When the machine is in a given state and reads the next
More informationMidterm I (Solutions) CS164, Spring 2002
Midterm I (Solutions) CS164, Spring 2002 February 28, 2002 Please read all instructions (including these) carefully. There are 9 pages in this exam and 5 questions, each with multiple parts. Some questions
More informationLanguages and Finite Automata
Languages and Finite Automata or how to talk to machines... Costas Busch - RPI 1 Languages A language is a set of strings String: A sequence of letters (a word) Examples: cat, dog, house, Defined over
More informationFront End: Lexical Analysis. The Structure of a Compiler
Front End: Lexical Analysis The Structure of a Compiler Constructing a Lexical Analyser By hand: Identify lexemes in input and return tokens Automatically: Lexical-Analyser generator We will learn about
More informationUniversal Turing Machine Chomsky Hierarchy Decidability Reducibility Uncomputable Functions Rice s Theorem Decidability Continued
CD5080 AUBER odels of Computation, anguages and Automata ecture 14 älardalen University Content Universal Turing achine Chomsky Hierarchy Decidability Reducibility Uncomputable Functions Rice s Decidability
More informationA Note on the Succinctness of Descriptions of Deterministic Languages
INFORMATION AND CONTROL 32, 139-145 (1976) A Note on the Succinctness of Descriptions of Deterministic Languages LESLIE G. VALIANT Centre for Computer Studies, University of Leeds, Leeds, United Kingdom
More information