dept. of computer science & it, fuuast automata theory 2 automata theory iii languages and...
TRANSCRIPT
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
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
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