dept. of computer science & it, fuuast automata theory 2 automata theory iii languages and...

31
AUTOMATA THEORY III

Upload: rosalyn-adams

Post on 24-Dec-2015

228 views

Category:

Documents


0 download

TRANSCRIPT

AUTOMATATHEORY

III

Dept. of Computer Science & IT, FUUAST Automata Theory 2

Automata Theory III

Languages And Regular Expressions

Construction of FA’s for given languages

S = { 0,1 }L0,L1, L2, L3, …………Ln L* = L0 L1 L2 L3 ……… Ln

3Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

L = {w | bm abn : m, n0}

= {a, b }

4Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

L = {w | am bn : m, n0}

= {a, b }

5Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {a, b }

L={ w| all strings with the prefix ‘ab’ on

6Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {0, 1}

L={0,1}* , having even number of 0’s

7Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {0, 1}

L={w {0,1}* | having odd number of 0’s}

8Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {a, b }L={ (ab)*| n0 }, not accepted.

9Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {a, b }L={ (ab)*| n1 }, not accepted.

10Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {0,1,… 9}

L= set of all integers

11Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {+,-,0,1,… 9}

L= set of all signed integers

12Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

= {a, b }L={ an| n0 } { bna | n 1}

13Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Regular Expressions ( Regex )

import java.util.regex.*; ‘Pattern’ and ‘Matcher’ classesusing System.Text.RegularExpressions;

Java:

C#:

‘Regex’ class

1) Wild Cards2) Computer Languages

C++, VB, Perl, Html, Oracle etc………….3) Operating Systems

Unix, Linux, Windows, etc. (grep, ed, awk, vi, expr)

Searching and Validation

A regular expression, often called a pattern, is an expression that describes a set of strings. They are usually used to give a concise description of a set, without having to list all elements.

14Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Examples of Regular Expressions:1) Email Address:

\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b2) IP Address:

\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b

3) Valid Date:(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])

4) Visa Card: ^4[0-9]{12}(?:[0-9]{3})?$

5) Master Card: ^5[1-5][0-9]{14}$

6) Strings:"[^"\r\n]*"

7) Numbers:\b\d+\b, \b0[xX][0-9a-fA-F]+\b, (\b[0-9]+\.([0-9]+\b)?|\.[0-

9]+\b)

15Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Representation of Regular ExpressionsIt is obtained from a set of symbols , empty string , null set , performing operations, union(+), concatenation(.), and Kleene star(*). Regular Expression defines Regular Languages as automata do. L(E) is a language defined by regular expression ‘E’

BASIS: 1) and are regular expressions, L()={} and L() ={} are corresponding regular Languages. 2) ‘a’ is a symbol, then a is a regular expression and L(a) ={a} is corresponding regular language.

16Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

INDUCTION:

Precedence of Regular Expression Operators:1) *2) .3) +

17Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

If P, Q and R are regular expressions; then

1) R + R = R2) + R = R3) R = R = 4) R = R = R5) R* = + R + R2 + R3 + R4 + R5 + . . . . . .6) (PQ)R = P(QR)7) PQ QP8) P (Q + R) = PQ + PR9) (P + R)Q = PQ + RQ10) R*R* = R*11) RR* = R*R12) (R*)* = R*13) (P + Q)* = (P*Q*)* = (P* + Q*)*

18Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Examples:1) 0 + 12) 13) 04) (0 + 1)15) (a + b).(b + c)6) (0+1)*7) (0+1)+

8) ( + 1)(01)*( + 0)

19Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

SET Regular Expression1) { ^, ab }2) {1,11,111, ….. }3) Set of all strings over {a,b} beginning and ending with ‘a’4) {b2, b5, b8, ……. }5) {a2n+1| n0}6) {a2nb2m+1| n0}7) Strings over {a,b} beginning with 0 and ending with 1

^ + ab 1(1)*a (a + b)*a

bb(bbb)*a (aa)*(aa)*(bb)*b0 (0 + 1)*1

20Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Def.:

If is set of alphabet:1) is a regular language2) For each a , {a} is a regular language3) If L0, L1, L2, L3, …….. Ln are regular languages then

L0 L1 L2 L3 ……. Ln is also regular language.4) If L0, L1, L2, L3, …….. Ln are regular languages then

L0 . L1 . L2 . L3 ……. . Ln is also regular language.5) If L is a regular language, then so is L*.

21Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Finite Automata and Regular Expressions

22Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

From DFA To Regular Expressions

23Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

24Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Converting DFA to Regular Expressions by Eliminating States

A generic two-state Automaton

A generic one-state Automaton

25Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

EliminatingB and C

26Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

27Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

28Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

L(ε) = {ε}

L(Ф) = Ф

L(a) = {a}

ε- NFA

29Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

L = L(R) L(S)

L = L(R)L(S)

L = L(R*)

30Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

Conversion of Regular Expression (0 + 1)*1(0 + 1) to ε- NFA

31Dept. of Computer Science & IT, FUUAST Automata Theory

Automata Theory III

THE ENDRegular Expressions (Chapter 3 )