Categorical Liveness Checking � by � Corecursive Algebras Natsuki Urabe, Masaki Hara & Ichiro Hasuo � June 20, 2017 Natsuki Urabe (U. Tokyo) � 1 / 29
Motivation ranking function � nondeterministic system Natsuki Urabe (U. Tokyo) � 2 / 29
Motivation “categorical ranking function” � generalization categorically � generalized system ranking function � nondeterministic system Natsuki Urabe (U. Tokyo) � 2 / 29
Motivation “categorical ranking function” � generalization concretization � categorically � generalized system “probabilistic � ranking function � ranking � function”? nondeterministic system probabilistic � system Natsuki Urabe (U. Tokyo) � 2 / 29
Outline • Preliminary � - Ranking Function � - Coalgebra and Coalgebra-Algebra Homomorphism � • Contribution � - Coalgebraic Ranking Function � - Probabilistic Ranking Function � • Conclusion and Future Work Natsuki Urabe (U. Tokyo) � 3 / 29
Outline • Preliminary � - Ranking Function � - Coalgebra and Coalgebra-Algebra Homomorphism � • Contribution � - Coalgebraic Ranking Function � - Probabilistic Ranking Function � • Conclusion and Future Work Natsuki Urabe (U. Tokyo) � 3 / 29
Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = Natsuki Urabe (U. Tokyo) � 4 / 29
Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = c b a ○ ○ ○ ○ ● x x arbitrary ≥ min { a, b, c } + 1 accepting nonaccepting Natsuki Urabe (U. Tokyo) � 4 / 29
/ / / O o O O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: x 1 x 3 x 5 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
/ / / O o O O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: x 1 x 3 x 5 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
O / / O o / O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: x 1 x 3 x 5 1 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
O / / O o / O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: x 1 x 3 x 5 2 1 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
o / / O O / O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: ∞ x 1 x 3 x 5 2 1 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
O / / o O / O / Ranking Function (see e.g. [Floyd, ’67]) • A method for checking reachability Def: A function is a ranking function if: b : X → N ∞ x ! x 0 b ( x 0 )+1 ≤ b ( x ) min for each nonaccepting state x N ∪ { ∞ } ( ) N ∞ = • Example: ∞ ∞ ∞ x 1 x 3 x 5 2 1 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 5 / 29
o O / / O / O / Soundness of Ranking Functions ∞ ∞ ∞ x 1 x 3 x 5 ! distance to an b ( x ) ≥ accepting state from x 2 1 0 u x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 6 / 29
/ / / O o O / O Soundness of Ranking Functions ∞ ∞ ∞ x 1 x 3 x 5 ! distance to an b ( x ) ≥ accepting state from x 2 1 0 u x 0 x 2 x 4 Thm: (see e.g. [Floyd, PSAM ’67] ) an accepting state b is a ranking function ⇒ b ( x ) < ∞ and is reachable from x Natsuki Urabe (U. Tokyo) � 6 / 29
/ O / / O / O o Soundness of Ranking Functions ∞ ∞ ∞ x 1 x 3 x 5 ! distance to an b ( x ) ≥ accepting state from x 2 1 0 u x 0 x 2 x 4 Thm: (see e.g. [Floyd, PSAM ’67] ) an accepting state b is a ranking function ⇒ b ( x ) < ∞ and is reachable from x under-approximates the reaching set Natsuki Urabe (U. Tokyo) � 6 / 29
Outline • Preliminary � - Ranking Function � - Coalgebra and Coalgebra-Algebra Homomorphism � • Contribution � - Coalgebraic Ranking Function � - Probabilistic Ranking Function � • Conclusion and Future Work Natsuki Urabe (U. Tokyo) � 7 / 29
Towards Categorical Generalization • Our first goal: � categorical generalization of ranking function • We have to categorically characterize: - a transition system - a reachability to accepting states Natsuki Urabe (U. Tokyo) � 8 / 29
Coalgebra • An ( F -) coalgebra is a function of the following form: X → F X : a functor F X 7! F X ( f : X → Y ) 7! ( F f : F X → F Y ) • Coalgebras model transition systems Natsuki Urabe (U. Tokyo) � 9 / 29
Coalgebra • An ( F -) coalgebra is a function of the following form: X → F X : a functor F X 7! F X ( f : X → Y ) 7! ( F f : F X → F Y ) • Coalgebras model transition systems • Dual notion: algebra F X → X • Algebras model modalities Natsuki Urabe (U. Tokyo) � 9 / 29
Example I: � Nondeterministic Transition System with Accepting States c : X → P X × { 0 , 1 } where P X = { A ⊆ X } F = P ( ) × { 0 , 1 } Natsuki Urabe (U. Tokyo) � 10 / 29
/ / O o O / / O Example I: � Nondeterministic Transition System with Accepting States c : X → P X × { 0 , 1 } where P X = { A ⊆ X } F = P ( ) × { 0 , 1 } x 1 x 3 x 5 u x 0 x 2 x 4 an accepting state Natsuki Urabe (U. Tokyo) � 10 / 29
/ / O o O / O / Example I: � Nondeterministic Transition System with Accepting States c : X → P X × { 0 , 1 } where P X = { A ⊆ X } F = P ( ) × { 0 , 1 } X = { x 0 , x 1 , x 2 , x 3 , x 4 , x 5 } x 1 x 3 x 5 x 0 7! ( { x 1 , x 2 } , 0) u x 1 7! ( { x 3 } , 0) x 0 x 2 x 4 c : . . an accepting state . x 4 7! ( { x 5 } , 1) . . . Natsuki Urabe (U. Tokyo) � 10 / 29
Example II: � Probabilistic Transition System with Accepting States c : X → D X × { 0 , 1 } where F = D ( ) × { 0 , 1 } D X = { d : X → [0 , 1] | P x d ( x ) = 1 } Natsuki Urabe (U. Tokyo) � 11 / 29
/ O O o O Example II: � Probabilistic Transition System with Accepting States c : X → D X × { 0 , 1 } where F = D ( ) × { 0 , 1 } D X = { d : X → [0 , 1] | P x d ( x ) = 1 } x 1 x 3 x 5 1 1 0 . 7 0 . 4 1 u 0 . 3 / 0 . 6 / x 0 x 2 x 4 Natsuki Urabe (U. Tokyo) � 11 / 29
O O o O / Example II: � Probabilistic Transition System with Accepting States c : X → D X × { 0 , 1 } where F = D ( ) × { 0 , 1 } D X = { d : X → [0 , 1] | P x d ( x ) = 1 } x 1 x 3 x 5 X = { x 0 , x 1 , x 2 , x 3 , x 4 , x 5 } 1 1 x 0 7! ([ x 1 7! 0 . 7 , x 2 7! 0 . 3] , 0) 0 . 7 0 . 4 1 u x 1 7! ([ x 3 7! 1] , 0) 0 . 3 / 0 . 6 / c : x 0 x 2 x 4 x 2 7! ([ x 3 7! 0 . 4 , x 4 7! 0 . 6] , 0) . . . Natsuki Urabe (U. Tokyo) � 11 / 29
O ✏ Coalgebra-Algebra Homomorphism Def: F f / F Ω F X A coalgebra-algebra homomorphism from to σ : F Ω → Ω c : X → F X c σ = f : X → Ω is s.t. σ � F f � c = f f / Ω X • Especially, the least coalgebra-algebra homomorphism captures reachability J µ σ K c : X → Ω Natsuki Urabe (U. Tokyo) � 12 / 29
✏ O Coalgebra-Algebra Homomorphism Def: F f / F Ω F X A coalgebra-algebra homomorphism from to σ : F Ω → Ω c : X → F X c σ = f : X → Ω is s.t. σ � F f � c = f f / Ω X • Especially, the least coalgebra-algebra homomorphism captures reachability J µ σ K c : X → Ω Example: ∃ • For nondeterministic systems, s.t. σ : F { 0 , 1 } → { 0 , 1 } J µ σ K c ( x ) = 1 ⇔ an accepting state is reachable from x ∃ σ : F [0 , 1] → [0 , 1] • For probabilistic systems, s.t. J µ σ K c ( x ) = Prob( reach an accepting state from x ) Natsuki Urabe (U. Tokyo) � 12 / 29
Recommend
More recommend