Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
REGULAR EXPRESSIONS
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
Basis:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
• ∅ is a regular expression denoting the language {}.Basis:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
• ∅ is a regular expression denoting the language {}.
• � is a regular expression denoting the language {�}.
Basis:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
• ∅ is a regular expression denoting the language {}.
• � is a regular expression denoting the language {�}.
• a is a regular expression denoting the language {a}.
Basis:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
• ∅ is a regular expression denoting the language {}.
• � is a regular expression denoting the language {�}.
• a is a regular expression denoting the language {a}.
Basis:
Induction Step:
DEFINITION
A regular expression over alphabet Σ is defined inductively by:
• ∅ is a regular expression denoting the language {}.
• � is a regular expression denoting the language {�}.
• a is a regular expression denoting the language {a}.
• if r, s are regular expressions denoting languages R,S then:
– r + s is a regular expression denoting R ∪ S.
– rs is a regular expression denoting RS.
– r∗ is a regular expression denoting R∗.
Basis:
Induction Step:
EXAMPLES
L(r) = language denoted by regular expression r
EXAMPLES
L(r) = language denoted by regular expression r
(0 + 1)∗
EXAMPLES
L(r) = language denoted by regular expression r
(0 + 1)∗
∅0
EXAMPLES
L(r) = language denoted by regular expression r
(0 + 1)∗
∅0
0∗ + (0∗10∗10∗10∗)∗
EXAMPLES
L(r) = language denoted by regular expression r
(0 + 1)∗
∅0
0∗ + (0∗10∗10∗10∗)∗
(0 + �)(1 + 10)∗
EXAMPLES
L(r) = language denoted by regular expression r
(0 + 1)∗
∅0
0∗ + (0∗10∗10∗10∗)∗
(0 + �)(1 + 10)∗
(1 + 01)∗(0 + �)
REGULAR EXPRESSIONS VS REGULAR LANGUAGES
Theorem. Regular languages = {L : ∃r s.t. L = L(r)}.
Read the
proof
from
theno
tes!
USEFUL EQUALITIES
USEFUL EQUALITIES
r� = r
USEFUL EQUALITIES
r� = r
r∅ = ∅
USEFUL EQUALITIES
r + s = s + r
r� = r
r∅ = ∅
USEFUL EQUALITIES
r + s = s + r
(r + s) + t = r + (s + t)
r� = r
r∅ = ∅
USEFUL EQUALITIES
r + s = s + r
(r + s) + t = r + (s + t)
r(s + t) = rs + rt
r� = r
r∅ = ∅
USEFUL EQUALITIES
r + s = s + r
(r + s) + t = r + (s + t)
(rs)t = r(st)
r(s + t) = rs + rt
r� = r
r∅ = ∅
USEFUL EQUALITIES
r + s = s + r
(r + s) + t = r + (s + t)
(rs)t = r(st)
r(s + t) = rs + rt
r� = r
r∅ = ∅
(r∗)∗ = r∗