Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 1 University of Texas at Dallas Ned Verifying Complex Continuous Real-Time Systems with Coinductive CLP(R) Neda Saeedloei, Gopal Gupta Department of Computer Science The University of Texas at Dallas Richardson, Texas, USA CICLOPS 2009 July 14 th 2009
23
Embed
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 1 University of Texas at Dallas Neda Saeedloei, Gopal Gupta Verifying Complex.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 1
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Verifying Complex Continuous Real-Time Systems with
Coinductive CLP(R)
Neda Saeedloei, Gopal GuptaDepartment of Computer ScienceThe University of Texas at Dallas
Richardson, Texas, USA
CICLOPS 2009
July 14th 2009
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 2
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Real-Time Systems
• Timed automata for specifying real-time systems– Recognize only timed regular languages
• Pushdown timed automata – Recognize timed context-free languages
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 3
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Motivation
• constraint logic programming over reals or CLP(R) & Co-induction for modeling timed automata
• Modeling PTAs with Co-induction and CLP(R)
• verify safety and liveness properties• The Generalized Railroad Crossing
problem– Safety– Utility
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 4
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
ω-Automata• ω-automata over the alphabet Σ is a tuple M= < Σ, Δ, Q, Q0, F
>– Q is the (finite) set of states– Q0 ⊆ Q is the set of initial states– F ⊆ Q is the set of final states– Δ ⊆ Q x Σ x Q is the transition relation
• Given an infinite string s = s0s1s2… , where si Є Σ, a derivation is defined as a sequence of transitions
• q0 Є Q0 , and (qi-1, si-1, qi) Є Δ
• Notions of acceptance of an infinite string s = s0s1s2…– Bϋchi: ∃q Є F and an infinite set of indices I such that (∀i Є I)(q = qi).– Mϋller: F Є 2Q, ∃A Є F, and an infinite set of indices Ia for each a Є A
such that (∀q Є A) (∀i Є Ia)(q = qi).
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 5
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Timed-Automata• A generalization of ω-automata, capable of
recognizing infinite words
• Given a string s = s0s1s2…, Purpose of timed automata is accepting timed words (si, ti)
• Timed automata obtained from ω-automata by adding– a finite set C of clocks– a set P of propositions over C
– a labeling function τc : Δ → 2 C (reset function)
– a labeling function τP : Δ → Prop(P), where prop(A) is the set of propositional formulae over the set of atomic propositions A
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 6
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Pushdown Timed Automata
• A Pushdown Timed Automaton extends a timed automaton with a stack
• A PTA is obtained from a timed automaton by adding– ε (empty string) to the input alphabet Σ
– a stack alphabet Γε = Γ U ε
– a stack represented by Γε *
• Acceptance conditions for an infinite string for a PTA– the stack must be empty.
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 7
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Pushdown Timed Automata Example
S R SR a {c := 0} T b {c
< 20}T a T bT a b {c < 5}
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 8
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Recognizers for ω-PDAs and ω-Grammars.
• PTAs and timed grammars accept infinite strings.
• Definite clause grammars (DCGs) extended with co-induction can act as recognizers for ω-PDAs and ω-grammars.– Using DCG facility of prolog to create parser for
context-free grammars or even context-sensitive grammars.
– extending logic programming with co-induction, to develop language processors that recognize infinite strings.
Advanced Logic Programming-Languages and Systems (ALPS) Lab @ UTD Slide- 9
University of Texas at Dallas Neda Saeedloei, Gopal Gupta
Modeling PTAs with coinductive CLP(R)
trans(s0, a, s1, T, Tr, To, _, [1]) :- {To=T}.trans(s1, a, s1, T, Tr, To, C, [1|C]):- {To=Tr}.trans(s1, b, s2, T, Tr, To, [1|C], C):- {T - Tr < 5, To