23
REGULAR EXPRESSIONS

REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

REGULAR EXPRESSIONS

Page 2: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

DEFINITION

A regular expression over alphabet Σ is defined inductively by:

Page 3: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

DEFINITION

A regular expression over alphabet Σ is defined inductively by:

Basis:

Page 4: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

DEFINITION

A regular expression over alphabet Σ is defined inductively by:

• ∅ is a regular expression denoting the language {}.Basis:

Page 5: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

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:

Page 6: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

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:

Page 7: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

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:

Page 8: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

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:

Page 9: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

Page 10: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

(0 + 1)∗

Page 11: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

(0 + 1)∗

∅0

Page 12: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

(0 + 1)∗

∅0

0∗ + (0∗10∗10∗10∗)∗

Page 13: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

(0 + 1)∗

∅0

0∗ + (0∗10∗10∗10∗)∗

(0 + �)(1 + 10)∗

Page 14: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

EXAMPLES

L(r) = language denoted by regular expression r

(0 + 1)∗

∅0

0∗ + (0∗10∗10∗10∗)∗

(0 + �)(1 + 10)∗

(1 + 01)∗(0 + �)

Page 15: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

REGULAR EXPRESSIONS VS REGULAR LANGUAGES

Theorem. Regular languages = {L : ∃r s.t. L = L(r)}.

Read the

proof

from

theno

tes!

Page 16: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

Page 17: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r� = r

Page 18: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r� = r

r∅ = ∅

Page 19: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r + s = s + r

r� = r

r∅ = ∅

Page 20: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r + s = s + r

(r + s) + t = r + (s + t)

r� = r

r∅ = ∅

Page 21: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r + s = s + r

(r + s) + t = r + (s + t)

r(s + t) = rs + rt

r� = r

r∅ = ∅

Page 22: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

USEFUL EQUALITIES

r + s = s + r

(r + s) + t = r + (s + t)

(rs)t = r(st)

r(s + t) = rs + rt

r� = r

r∅ = ∅

Page 23: REGULAR EXPRESSIONSazadeh/page11/page12/material/re.pdfA regular expression over alphabet Σ is defined inductively by: • ∅ is a regular expression denoting the language {}. •

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∗