Overview of Modal µ -calculus Prof. Susan Older 31 October 2017 (CIS 400/632) µ -calculus 31 October 2017 1 / 13
µ -Calculus: Syntax Formulas of the logic: Use of meta-variables: ϕ represents a formula, K represents a set of actions, Z represents a propositional variable ϕ ::= | | ϕ 1 ∧ ϕ 2 | ϕ 1 ∨ ϕ 2 | [ K ] ϕ | � K � ϕ tt ff | | µ Z .ϕ | ν Z .ϕ Z (CIS 400/632) µ -calculus 31 October 2017 2 / 13
µ -Calculus: Syntax Formulas of the logic: Use of meta-variables: ϕ represents a formula, K represents a set of actions, Z represents a propositional variable ϕ ::= | | ϕ 1 ∧ ϕ 2 | ϕ 1 ∨ ϕ 2 | [ K ] ϕ | � K � ϕ tt ff | | µ Z .ϕ | ν Z .ϕ Z Intuition behind µ and ν : µ Z .ϕ represents the “smallest” set of processes that satisfies the possibly recursive formula Z = ϕ ν Z .ϕ represents the “largest” set of processes that satisfies the possibly recursive formula Z = ϕ (CIS 400/632) µ -calculus 31 October 2017 2 / 13
µ -Calculus: Semantics | Q | | ϕ | V is set of processes from Q that satisfy ϕ under valuation V : | Q | Q | Q | Q | | tt | V = Q | | ϕ 1 ∧ ϕ 2 | V = | | ϕ 1 | V ∩ | | ϕ 2 | V | Q | Q | Q | Q | | ff | V = ∅ | | ϕ 1 ∨ ϕ 2 | V = | | ϕ 1 | V ∪ | | ϕ 2 | V | Q | | Z | V = V ( Z ) ∩ Q V = { P ∈ Q | ∀ α ∈ K , ∀ P ′ ∈ Q . (if P → P ′ then P ′ ∈ | α | Q | Q | | [ K ] ϕ | − | ϕ | V ) } = { P ∈ Q | { P ′ ∈ Q | P → P ′ and α ∈ K } ⊆ | α | Q − | ϕ | V } V = { P ∈ Q | ∃ α ∈ K , ∃ P ′ ∈ Q . ( P → P ′ and P ′ ∈ | α | Q | Q | |� K � ϕ | − | ϕ | V ) } | Q | Q | | µ Z .ϕ | V = lfp f , where f ( S ) = | | ϕ | V [ S / Z ] | Q | Q | | ν Z .ϕ | V = gfp f , where f ( S ) = | | ϕ | V [ S / Z ] (CIS 400/632) µ -calculus 31 October 2017 3 / 13
Method of Approximants: Greatest Fixed Points To identify greatest fixed point of monotonic function g : 2 P → 2 P : Define a series of approximants as follows (where i ≥ 0): ν 0 g = P ν i +1 g = g ( ν i g ) Claim: For each i , gfp g ⊆ ν i g . Proof sketch: Note that ν 0 g = P , so it’s necessarily the case that gfp g ⊆ ν 0 g . By induction (and monotonicity), for each i , gfp g ⊆ ν i g . (CIS 400/632) µ -calculus 31 October 2017 4 / 13
Method of Approximants: Greatest Fixed Points To identify greatest fixed point of monotonic function g : 2 P → 2 P : Define a series of approximants as follows (where i ≥ 0): ν 0 g = P ν i +1 g = g ( ν i g ) Claim: For each i , gfp g ⊆ ν i g . Proof sketch: Note that ν 0 g = P , so it’s necessarily the case that gfp g ⊆ ν 0 g . By induction (and monotonicity), for each i , gfp g ⊆ ν i g . What’s the point? To calculate gfp g , it suffices to find the first i for which ν i +1 g = ν i g : then gfp g = ν i g ! (CIS 400/632) µ -calculus 31 October 2017 4 / 13
Method of Approximants: GFP Example Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def = b . P 2 + a . P 3 = b . P 1 + c . P 4 = a . P 2 + a . P 3 + b . P 5 P 1 P 3 P 4 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 (CIS 400/632) µ -calculus 31 October 2017 5 / 13
Method of Approximants: GFP Example Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def = b . P 2 + a . P 3 = b . P 1 + c . P 4 = a . P 2 + a . P 3 + b . P 5 P 1 P 3 P 4 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 Let g : 2 R → 2 R be: | R g ( Z ) = | | [ a ] Y ∧ � b � tt | V [ Z / Y ] | R | R = | | [ a ] Y | ∩ | |� b � tt | V [ Z / Y ] V [ Z / Y ] { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} | R = − ∩ | |� b � tt | V [ Z / Y ] (CIS 400/632) µ -calculus 31 October 2017 5 / 13
Method of Approximants: GFP Example Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def = b . P 2 + a . P 3 = b . P 1 + c . P 4 = a . P 2 + a . P 3 + b . P 5 P 1 P 3 P 4 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 Let g : 2 R → 2 R be: | R g ( Z ) = | | [ a ] Y ∧ � b � tt | V [ Z / Y ] | R | R = | | [ a ] Y | ∩ | |� b � tt | V [ Z / Y ] V [ Z / Y ] { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} | R = − ∩ | |� b � tt | V [ Z / Y ] { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} = − ∩ { P 1 , P 2 , P 3 , P 4 } (CIS 400/632) µ -calculus 31 October 2017 5 / 13
Method of Approximants: GFP Example (Continued) Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) − ∩ { P 1 , P 2 , P 3 , P 4 } = (CIS 400/632) µ -calculus 31 October 2017 6 / 13
Method of Approximants: GFP Example (Continued) Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) − ∩ { P 1 , P 2 , P 3 , P 4 } = ν 0 g = R (CIS 400/632) µ -calculus 31 October 2017 6 / 13
Method of Approximants: GFP Example (Continued) Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) − ∩ { P 1 , P 2 , P 3 , P 4 } = ν 0 g = R ν 1 g = g ( R ) = R ∩ { P 1 , P 2 , P 3 , P 4 } = { P 1 , P 2 , P 3 , P 4 } (CIS 400/632) µ -calculus 31 October 2017 6 / 13
Method of Approximants: GFP Example (Continued) Suppose R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def = b . P 2 + a . P 4 = a . P 4 + a . P 5 P 2 P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) − ∩ { P 1 , P 2 , P 3 , P 4 } = ν 0 g = R ν 1 g = g ( R ) = R ∩ { P 1 , P 2 , P 3 , P 4 } = { P 1 , P 2 , P 3 , P 4 } ν 2 g = g ( { P 1 , P 2 , P 3 , P 4 } ) { P 1 , P 2 , P 3 , P 4 } ∩ { P 1 , P 2 , P 3 , P 4 } = { P 1 , P 2 , P 3 , P 4 } = Since ν 2 g = ν 1 g = { P 1 , P 2 , P 3 , P 4 } , the greatest fixed point is { P 1 , P 2 , P 3 , P 4 } . (CIS 400/632) µ -calculus 31 October 2017 6 / 13
Method of Approximants: Least Fixed Points To identify least fixed point of monotonic function g : 2 P → 2 P : Define a series of approximants as follows (where i ≥ 0): µ 0 g = ∅ µ i +1 g = g ( µ i g ) Claim: For each i , µ i g ⊆ lfp g . Proof sketch: Note that µ 0 g = ∅ , so it’s necessarily the case that µ 0 g ⊆ lfp g . By induction (and monotonicity), for each i , µ i g ⊆ lfp g . (CIS 400/632) µ -calculus 31 October 2017 7 / 13
Method of Approximants: Least Fixed Points To identify least fixed point of monotonic function g : 2 P → 2 P : Define a series of approximants as follows (where i ≥ 0): µ 0 g = ∅ µ i +1 g = g ( µ i g ) Claim: For each i , µ i g ⊆ lfp g . Proof sketch: Note that µ 0 g = ∅ , so it’s necessarily the case that µ 0 g ⊆ lfp g . By induction (and monotonicity), for each i , µ i g ⊆ lfp g . What’s the point? To calculate lfp g , it suffices to find the first i for which µ i +1 g = µ i g : then lfp g = µ i g ! (CIS 400/632) µ -calculus 31 October 2017 7 / 13
Method of Approximants: LFP Example Recall R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def P 2 = b . P 2 + a . P 4 P 5 = a . P 4 + a . P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) = − ∩ { P 1 , P 2 , P 3 , P 4 } (CIS 400/632) µ -calculus 31 October 2017 8 / 13
Method of Approximants: LFP Example Recall R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def P 2 = b . P 2 + a . P 4 P 5 = a . P 4 + a . P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) = − ∩ { P 1 , P 2 , P 3 , P 4 } µ 0 g = ∅ (CIS 400/632) µ -calculus 31 October 2017 8 / 13
Method of Approximants: LFP Example Recall R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def P 2 = b . P 2 + a . P 4 P 5 = a . P 4 + a . P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) = − ∩ { P 1 , P 2 , P 3 , P 4 } µ 0 g = ∅ µ 1 g = g ( ∅ ) = { P 3 } ∩ { P 1 , P 2 , P 3 , P 4 } = { P 3 } (CIS 400/632) µ -calculus 31 October 2017 8 / 13
Method of Approximants: LFP Example Recall R = { P 1 , P 2 , P 3 , P 4 , P 5 } : def def def P 1 = b . P 2 + a . P 3 P 3 = b . P 1 + c . P 4 P 4 = a . P 2 + a . P 3 + b . P 5 def def P 2 = b . P 2 + a . P 4 P 5 = a . P 4 + a . P 5 { P ∈ R | { P ′ | P a → P ′ } ⊆ Z} g ( Z ) = − ∩ { P 1 , P 2 , P 3 , P 4 } µ 0 g = ∅ µ 1 g = g ( ∅ ) = { P 3 } ∩ { P 1 , P 2 , P 3 , P 4 } = { P 3 } µ 2 g = g ( { P 3 } ) = { P 1 , P 3 } ∩ { P 1 , P 2 , P 3 , P 4 } = { P 1 , P 3 } (CIS 400/632) µ -calculus 31 October 2017 8 / 13
Recommend
More recommend