Unit-6: Model-checking ω -regular properties
B. Srivathsan
Chennai Mathematical Institute
NPTEL-course
Module 2:
ω -regular expressions to NBA
Σ ={a,b}
Example 1: Infinite word consisting only ofa {aaaaaaaaaaaaaaaa... }
Example 4: Infinite words whereboccursonly finitely often {aaaaaaaaaaaaaaaa... , baaaaaaaaaa... , babbaaaaaaaaaaaa..., ...}
Example 3: a word inaaΣ∗aafollowed by onlyb-s
{aaaabbbbbbb... , aababaabbbbbb... , aabbbbaabbbbbbb..., ...} Example 2: Infinite words containing onlyaor onlyb
{aaaaaaaaaaaaaaa... , bbbbbbbbbbbb... }
a
ωa
ω +b
ωaa
Σ∗aa · b
ω(
a
+b
)∗· a
ωω-regular expressions
G
=E
1· F
1ω +E
2· F
2ω +· · ·
+E
n· F
nωE
1, ..., E
n, F
1, ..., F
nare regular expressions and ε / ∈ L
(F
i)for all 1 ≤ i ≤ n
L
(F
ω) ={ w
1w
2w
3... | each w
i∈ L
(F
)}
More examples
É (a+b)ωset ofall infinite words
É a(a+b)ωinfinite wordsstarting withana
É (a+bc+c)ωwords where everybisimmediately followedbyc
É (a+b)∗c(a+b)ωwords with asingle occurrenceofc
É ((a+b)∗c)ωwords wherecoccurs infinitely often
ω-regular expressions
G
=E
1· F
1ω +E
2· F
2ω +· · ·
+E
n· F
nωGoal: Convert ω-regular expression to NBA
Part 1: Given regular expression U, find NBA for U
ωq0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q1
q00
a
b a
a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q1
q00
a
b a
a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q1
q00
a
b a
a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0 q1
q00
q1 q00
a a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1 q00
q1 q00
a a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1 q00
q1 q00
a a a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q0
q00
a
b a
b
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q0
q00
a
b a
b
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00 q0
q00
a
b a
b
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0 q1
q00
q0 q00
a
b a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00
q0 q00
a
b a
NBA forUω
q0 q1 a
b
NFA forU
q0 q1
q00
a
b a
Standardized NFA
q0
q1
q00
q0 q00
a
b a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q2 q00
q1
q2 q00
a
b a c a
a a a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q2 q00
q1
q2 q00
a
b a c a
a a a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q2 q00
q1
q2 q00
a
b a c a
a a a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q00
q1
q2 q00
a
b a a
a a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q2 q00
q1
q00
a
b a a
a a
NBA forUω
q0
q1
q2 a
b a c
NFA forU
q0
q1
q2 q00
a
b a c a
a
Standardized NFA
q0
q1
q2 q00
q1
q00
a
b a a
a a
NBA forUω
a
b b
a
11/20
NFA forU
a b
a
b b
a
11/20
Standardized NFA forU
a b
a
b b
a b a
11/20
NBA forUω
a
b b
a
11/20
NFA forU
a b
a
b b
a
11/20
Standardized NFA forU
a b
a
b b
a b a
11/20
NBA forUω
a
b b
a
11/20
NFA forU
a b
a
b b
a
11/20
Standardized NFA forU
a b
a
b b
a b a
NBA forUω
11/22
ω-regular expressions
G
=E
1· F
1ω +E
2· F
2ω +· · ·
+E
n· F
nωGoal: Convert ω-regular expression to NBA
Part 1: Given regular expression U, find NBA for U
ωDone!
Part 2:Given regular expressionUand NBA forVfind NBA forU·V
q0 a q1 q2 a,b
a
aΣ∗a
p0 p1
a b
a b
(a∗b)ω
q0 a q1 q2 p0 p1
a,b a
a
b a
a b
aΣ∗a·(a∗b)ω
q0 a q1 q2 a,b
a
aΣ∗a
p0 p1
a b
a b
(a∗b)ω
q0 a q1 q2 p0 p1
a,b a
a
b a
a b
aΣ∗a·(a∗b)ω
q0 a q1 q2 a,b
a
aΣ∗a
p0 p1
a b
a b
(a∗b)ω
q0 a q1 q2 p0 p1
a,b a
a
b a
a b
aΣ∗a·(a∗b)ω
q0 q1
q2 q3
a a,b
a,b b
aΣ∗ + Σ∗b
p1 p2
a b
a b
(a∗b)ω
q0 q1
q2 q3
p1 p2
a a,b
a,b b
a b
a b a,b
a
b
(aΣ∗+ Σ∗b)·(a∗b)ω
q0 q1
q2 q3
a a,b
a,b b
aΣ∗ + Σ∗b
p1 p2
a b
a b
(a∗b)ω
q0 q1
q2 q3
p1 p2
a a,b
b
a b
a b a,b
a (aΣ∗+ Σ∗b)·(a∗b)ω
U V
U·V
a
b b
a a
b b
a
b
b a
a
U V
U·V
a
b b
a a
b b
a
b
b a
a
U V
U·V
a
b b
a a
b b
a b
b
a
a
U V
U·V
a
b b
a a
b b
a b
b a
a
U V
U·V
a
b b
a a
b b
a b
b a
a
ω-regular expressions
G
=E
1· F
1ω +E
2· F
2ω +· · ·
+E
n· F
nωGoal: Convert ω-regular expression to NBA
Part 1:Given regular expressionU, find NBA forUω
Part 2:Given regular expressionUand NBA forVfind NBA forU·V
Done!
Part 3:Given NBA forUand NBA forV find NBA forU + V
Union of NBA already seen in Unit 5
Part 3:Given NBA forUand NBA forV find NBA forU + V
Union of NBA already seen in Unit 5
Part 1:Given regular expressionU, find NBA forUω
Part 2:Given regular expressionUand NBA forVfind NBA forU·V
Part 3:Given NBA forUand NBA forV find NBA forU + V
Theorem
Every ω-regular expression can be converted to an NBA