Download presentation

Presentation is loading. Please wait.

1
**Language and Automata Theory**

Chapter 2 Language and Automata Theory Learning objectives : Introduce finite state automata Able to capture state, events and dynamic behavior of “man-made systems” Present logical properties Textbook : C. Cassandras and S. Lafortune, Introduction to Discrete Event Systems, Springer, 2007 1

2
Plan Languages Finite state automata 2

3
Languages 3

4
**Definitions Definition:**

A language L, defined over an alphabet E, is a set of strings formed from events in E. Language vs DES : E = set of events string = sequence of events L = set of all possible event sequences Example : E = {a,b,g} L1 = {e, a, abb}, L2 = {all strings of length 3} L3 = {all strings of finite length ending with a} L4 = {all possible sequences of a queue} 4

5
**Regular expressions Operations E : alphabet, A, B : languages**

e = empty string, u, v, w: strings Concatenation : AB = {w : w = uv, uA, vB} Union : A+B = {w : wA, or vB} Kleene closure : where A0 = {e}, An = AAn-1 5

6
**Regular expressions Example : E = {a,b,g} L1 = {e, a, abb}, L2 = {g}**

L1L2 = {g, ag, abbg} L2* = {e, g, gg, ggg, ...} L1* = {e, a, abb, aa, aabb, abba, abbabb, ...} L1+ L2 ={e, a, abb, g} 6

7
Regular expressions Definition: A regular expression is a representation defined recursively as follows : F is a regular expression denoting the empty set, e is a regular expression denoting the set {e}, e is a regular expression denoting the set {e} for any e E. If r and s are regular expressions, then rs, (r+s), r* and s* are regular expressions. There are no regular expressions other than those constructed by applying rules 1 and 2 a finite number of times Definition: Any language that can be denoted by a regular expression is a regular language. 7

8
**L = (a+b)g* = {???} L = (ab)*+g = {???} L = ((a+b)g*)***

Regular expressions Examples: L = (a+b)g* = {???} L = (ab)*+g = {???} L = ((a+b)g*)* 8

9
**Finite-state automata**

9

10
**Definition Definition: A finite-state automaton (FSA) is a five-tuple**

(E, X, f, x0, F) where E is a finite alphabet X is a finite state set f is a state transition function f: X× E → X where f is a partial function and f(x, e) is sometime not defined. x0 is an initial state, x X F is a set of final states, F X

11
Definition Transition function f can be extended to strings u : f(x, u) An automaton is a device that generates a language according to some rules. An automaton is nondeterministic if there are two possible transitions with the same event and starting from the same state. Nondeterministic automaton can always be transformed into deterministic FSA by taking all possible subsets reached by events as states. Nondeterministic automaton will not be considered.

12
**Example Definition: State transition diagram a b g x a y g b a g z b**

Consider an automaton (E, X, f, x0, F) E = {a, b, g} X = {x, y, z} f(x, a) = x, f(x, b) = f(x, g) = z f(y, a) = x, f(y, b) = f(y, g) = y f(z, b) = z, f(z, a) = f(z, g) = y initial state x0 = x Final states : F = {x, z} Sample paths: ??? State transition diagram a b g x a y g b a g z b 12

13
**Automata as language recognizers**

Definition: A string u is recognized by a finite automaton (E, X, f, x0, F) if f(x0, u) = x where x F. Definition: The language recognized by a finite-state automaton A = (E, X, f, x0, F) is a set of strings {u: f(x0, u) x F}. L(A) = language recognized by A. Example: aab L(A) = ??? x y z g b a 13

14
**Equivalence of FSA and regular expressions**

Theorem: If a language is regular, then it can be generated by some finite-state automaton; and if it is generated by a finite-state automaton, then it is a regular language. Deriving the language of an FSA define the language Ls terminating at state s; write one-step equations for all Ls; Solve the equations. Arden’s rule : If L1 does not contain the empty string, L2 = L1L2 + L3 → L2 = L1*L3 L2 = L2L1 + L3 → L2 = L3L1* x y z g b a 14

15
**Properties of a FSA model**

Reachability: A state s is reachable from the initial state x0 if there exists a sequence u such that f(x0, u) = s. Blocking-free: For any reachable state, there exists a sequence of transitions leading to a final state. Deadlock: a state s is called a deadlock state if there is no feasible event from it. Livelock: a subset of states that are mutually reachable but with no event going out of the set. Example : FSA = (0, a, 1), (1, g, 5), (1, a, 3), (1, b, 2), (2, g, 0), (3, b, 4), (4, a, 3), (4, g, 4), x0 = 0, F = {2}. 15

16
**FSA models of queueing systems**

B a a a I 1 2 b d d d m l Queueing perspective D Server perspective I = idle, B = busy D = down 16

Similar presentations

OK

CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Regular.

CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Regular.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Download ppt on types of houses Water saving tips for kids ppt on batteries Download ppt on coordinate geometry for class 9th result Ppt on domestic robots definition Ppt on artificial intelligence techniques Agriculture for kids ppt on batteries Ppt on bluetooth broadcasting software Ppt on abstract art prints Ppt on dispersal of seeds by animals games Free ppt on moving coil galvanometer instrument