Checking MTL Properties of Discrete Timed Automata via Bounded Model Checking
|
|
|
- Muriel O’Brien’
- 10 years ago
- Views:
Transcription
1 Checing MTL Properties of Discrete Timed Automata via Bounded Model Checing Extended Abstract Bożena Woźna-Szcześnia and Andrzej Zbrzezny IMCS, Jan D lugosz University. Al. Armii Krajowej 13/15, Czȩstochowa, Poland. {b.wozna,a.zbrzezny}@ajd.czest.pl Abstract. We investigate a SAT-based bounded model checing (BMC) method for MTL (metric temporal logic) that is interpreted over linear discrete infinite time models generated by discrete timed automata. In particular, we translate the existential model checing problem for MTL to the existential model checing problem for a variant of linear temporal logic (called HLTL), and we provide a SAT-based BMC technique for HLTL. We show how to implement the BMC technique for HLTL and discrete timed automata, and as a case study we apply the technique in the analysis of TGPP, a Timed Generic Pipeline Paradigm modelled by a networ of discrete timed automata. 1 Introduction Nowadays the interest in model checing [5] is focused not only on standard concurrent systems, but also on soft real-time systems, i.e., systems the goal of which is to ensure a certain subset of deadlines in order to optimize some application specific criteria. A number of formalisms, which use a discrete time domain, have been proposed in the literature to model the behaviour of these systems, e.g. discrete timed automata [2] and discrete timed Petri nets [7]. To express the requirements of the systems mostly standard temporal logics are used: computation tree logic (CTL) [4], the soft real-time CTL (RTCTL) [6], linear temporal logic (LTL) [13], and metric temporal logic (MTL) [8, 10, 14]. Bounded model checing (BMC) [3, 11, 12] is a symbolic verification method that uses only a portion of the considered model that is truncated up to some specific depth. It exploits the observation that we can infer some properties of the model using only its fragments. This approach can be combined with symbolic techniques based on decision diagrams or with techniques which involve translation of the verification problem either to the boolean satisfiability problem (SAT) or to the satisfiability modulo theories (SMT) problem. The original contributions of the paper are as follows. First, we define a SAT-based BMC for soft real-time systems, which are modelled by discrete Partly supported by National Science Center under the grant No. 2011/01/B/ST6/05317.
2 470 B. Woźna-Szcześnia, A. Zbrzezny timed automata, and for properties expressible in MTL. Next, we report on the implementation of the proposed BMC method as a new module of VerICS [9]. Finally, we evaluate the BMC method experimentally by means of a timed generic pipeline paradigm (TGPP), which we model by a networ of discrete timed automata. The rest of the paper is structured as follows. In Section 2 we brief the basic notion used through the paper. In Section 3 we define the BMC method for HLTL. In Section 4 we discuss our experimental results. In Section 5 we conclude the paper. 2 Preliminaries We assume familiarity with the notion of discrete timed automaton (DTA) and their semantics in terms of the Kripe structure (called model). We refer the reader to the body of the paper [15] for details; note that a discrete timed automaton is basically a timed automaton with the restriction that clocs are positive integer variables. Further, we assume the following syntax of MTL. Let p PV, and I be an interval in N = {0, 1, 2,...} of the form: [a, b) or [a, ), for a, b N and a b; note that the remaining forms of intervals can be defined by means of [a, b) and [a, ). The MTL formulae in the negation normal form are defined by the following grammar: α := p p α α α α αu I α αr I α We refer the reader to the body of the paper [15] for the semantics of MTL; note that to get the discrete time semantics for MTL from the dense time semantics for MITL, in all the definitions presented in [15] at page 5, it is enough to replace the set of positive real numbers with the set of positive integer numbers, and to drop the assumption about single intervals. Determining whether an MTL formula ϕ is existentially (resp. universally) valid in a given model is called an existential (resp. universal) model checing problem. In order to define a SAT-based BMC method for MTL, we first translate the existential model checing problem for MTL that is interpreted over the region graph (i.e., a standard finite model defined for (discrete) timed automata) to the existential model checing problem for HLTL that is also interpreted over the region graph. For the details on this translation and the semantics of the HLTL language we refer the reader to [15]; note that the single intervals do not affect this translation. Here we only provide the syntax of HLTL and the translation scheme. Let ϕ be an MTL formula, n the number of intervals in ϕ, p PV a propositional variables, and h = 0,..., n 1. The HLTL formulae in release positive normal form are given by the following grammar: α := p p α α α α H h α αuα αrα
3 Checing MTL Properties of Discrete Timed Automata where the symbols U and R denote the until and release modalities, respectively. The indexed symbol H h denotes the reset modality representing the reset of the cloc number h. In addition, we introduce some useful derived temporal modalities: Gα def = Rα (always), Fα def = Uα (eventually). Let ϕ be a MTL formula. We translate the formula ϕ inductively into the HLTL formula H(ϕ) in the following way: H( ) =, H( ) =, H(p) = p, H( p) = p, for p PV, H(α β) = H(α) H(β), H(α β) = H(α) H(β), H(αU Ih β) = H h (H(α)U(H(β) p yh I h (p nf H(α)))), H(αR Ih β)) = H h (H(α)R( p yh I h H(β))). Observe that the translation of literals as well as logical connectives is straightforward. The translation of the U Ih operator ensures that: (1) the translation of β holds in the interval I this is expressed by the requirement H(β) p yh I h ; (2) the translation of α holds always before the translation of β; and (3) if the value of the cloc y h belong to the final zone, i.e. the values of all the clocs are bigger then some maximal value (in this case the proposition p nf is not true), then the translation of H(α) is taen into account as well. The translation of the R Ih operator maes use of the fact αr Ih β = βu Ih α β G Ih β. This translation preserves the existential model checing problem, i.e., the existential model checing of an MTL formula ϕ over the discrete model can be reduced to the existential model checing of H(ϕ) over the region graph. The next step in defining a SAT-based BMC method for MTL relies on introducing a discretisation scheme for the region graph (defined for a given discrete timed automaton) that will represent zones (i.e. sets of equivalent cloc valuations) of the region graph by exactly one specially chosen representative, and proving that a discretised model based on this scheme preserves the validity of the HLTL formulae - the discretised model constitutes the base for an implementation of our BMC method. We do not report on this step here in detail, since it requires introducing the huge mathematical machinery, but in fact it can be done in a way similar to the one presented in [16]. However, this will be provided in the full version of the paper. The final step in defining a SAT-based BMC method for MTL relies on defining the BMC method for HLTL. This is described in the next section. 3 Bounded model checing for HLTL Bounded semantics of a logic in question with existential interpretation is always used as the theoretical basis for the SAT-based bounded model checing. In the paper we have decided not to provide this semantics and not to show its equivalence to the unbounded semantics. This will be presented in the full version of the paper. Here, we only focus on the core of the BMC method, i.e. on the translation to SAT. Let A be a discrete timed automaton, ϕ an MTL formula, ψ = H(ϕ) the corresponding HLTL formula, M a discretized model for A ϕ (this an extension
4 472 B. Woźna-Szcześnia, A. Zbrzezny of A for the exact construction we refer to [15]), and 0 a bound. We propose a BMC method for HLTL, which is based on the BMC technique presented in [17]. More precisely, we construct a propositional formula [M, ψ] := [M ψ,ι ] [ψ] M, (1) that is satisfiable if and only if the underlying model M is a genuine model for ψ. The constructed Formula (1) is given to a satisfiability solving program (a SAT-solver), and if a satisfying assignment is found, that assignment is a witness for the checed property. If a witness cannot be found at a given depth,, then the search is continued for larger. The definition of the formula [M, ψ] requires, among other, states of the model M to be encoded in a symbolic way. This encoding is possible, since the set of states of M is finite. In particular, we represent each state s by a vector w = (w 1,..., w r ) (called a symbolic state) of propositional variables (called state variables), whose length r depends on the number of locations and clocs in A ϕ. Further, we need to represent finite prefixes of paths in a symbolic way. We call this representation a j-th symbolic -path π j and define it as a pair ((w 0,j,..., w,j ), u j ), where w i,j are symbolic states for 0 j < f (ψ) and 0 i, and u j is a symbolic number for 0 j < f (ψ). The symbolic number u j is a vector u j = (u 1,j,..., u t,j ) of propositional variables (called natural variables), whose length t equals to max(1, log 2 ( + 1) ), and it is used to encode the looping conditions. Next, we need an auxiliary function f : HLTL N that gives a bound on the number of -paths sufficient for validating a given HLTL formula. The function is defined as f (ψ) = f (ψ) + 1, where f ( ) = f ( ) = f (p) = f ( p) = 0 for p PV; f (α β) = f (α) + f (β); f (α β) = max{f (α), f (β)}; f (H h α) = f (α)+1; f (αuβ) = f (α)+f (β); f (αrβ) = ( + 1) f (β) + f (α). The formula [M ψ,ι ] the 1st conjunct of Formula (1) encodes f (ψ)-times unrolled transition relation, and it is defined in the following way: f (ϕ) [M ψ,ι ] := I ι (w 0,0 ) H(w 0,0, w 0,j ) j=1 f (ψ) j=1 1 i=0 T (w i,j, w i+1,j ) f (ψ) j=0 B l = (u j ) (2) where w i,j are symbolic states, u j is a symbolic number, I ι (w 0,0 ) and B l = (u j) are formulae encoding the initial state, and the value l, respectively. H(w, w ) is a formula that encodes equality of two global states. The formula T (w i,j, w i+1,j ) is disjunction of three formulas: T (w i,j, w i+1,j ), T A(w i,j, w i+1,j ), and A(w i,j, w i+1,j ) that encode respectively the time, time-action, and action successors of M. The formula [ψ] M, := [ψ] [0,1,F (ψ)] the 2nd conjunct of Formula (1) encodes the translation of a HLTL formula ψ along a -path, whose number belongs to the set F (ψ) = {j N 1 j f (ψ)}. The main idea of this translation consists in translating every subformula α of ψ using only f (α) -paths. More precisely, given a formula ψ and a set F (ψ) of indices of -paths, following [17], we divide the set F (ψ) into subsets needed for translating the subformulae of l=0
5 Checing MTL Properties of Discrete Timed Automata ψ. We assume that the reader is familiar with this division process, and here we only recall definitions of the functions we use in the definition of the formula [ψ] [0,1,F (ψ)]. First, we recall the relation that is defined on the power set of N as: A B iff for all natural numbers x and y, if x A and y B, then x < y. Now, let A N be a finite nonempty set, and n, d N, where d A. Then, g l (A, d) denotes the subset B of A such that B = d and B A \ B. g r (A, d) denotes the subset C of A such that C = d and A \ C C. g s (A) denotes the set A \ {min(a)}. if n divides A d, then hp(a, d, n) denotes the sequence (B 0,..., B n ) of subsets of A such that n j=0 B j = A, B 0 =... = B n 1, B n = d, and B i B j for every 0 i < j n. Now let h U df (A, d) = hp(a, d, ) and h R df (A, d) = hp(a, d, + 1). Note that if h U (A, d) = (B 0,..., B ), then h U (A, d)(j) denotes the set B j, for every 0 j. Similarly, if h R (A, d) = (B 0,..., B +1 ), then h R (A, d)(j) denotes the set B j, for every 0 j + 1. Further, the function g s is used in the translation of subformulae of the form H h α, if a set A is used to translate this formula, then the path of the number min(a) is used to translate the operator H h and the set g s (A) is used to translate the subformula α. For more details on the remaining functions we refer to [17]. Now we are ready to define the formula [ψ] [0,1,F (ψ)]. Let ψ be a HLTL formula, and 0 a bound. We can define inductively the translation [ψ] [m,n,a] of ψ along the n-th symbolic path π n (n F (ψ)) with starting point m by using the set A as shown below. Let cl(w m,n, h) denote the fragment of the symbolic state w m,n that encodes the h-th cloc from the set Y, n = min(a), h U = hu (g s(a), f (β)), and h R = hr (g s(a), f (α)). Then, [ ] [m,n,a] [α β] [m,n,a] [α β] [m,n,a] [H h (αuβ)] [m,n,a] [m,n, A] [H h (αrβ)] :=, [ ] [m,n,a] :=, [p] [m,n,a] := [α] [m,n,g l(a,f (α))] := [α] [m,n,g l(a,f (α))] := p(w m,n ), [ p] [m,n,a] := p(w m,n ), [β] [m,n,gr(a,f (β))], [β] [m,n,g l(a,f (β))], := m 1 j=0 H(w j,n, w j,n ) H h=0 (w m,n, w m,n ) j=m+1 H h (w j,n, w j,n ) ( j 1 ) ),h U j=m ([β][j,n ()],h U i=m [α][i,n (i)] j=m+1 H h(w j,n, w j,n ) H h=0 (w m,n, w m,n ) ( m 1 l=0 (Ll (π n ) l 1 j=0 H(w j,n, w j,n ) H(w l,n, w,n ) m 1 j=l+1 H h(w j,n, w j,n )) ) ( m 1 j=0 (B> j (u n ),h U [β][j,n ()] j 1 i=0 (B> i (u n ),h U [α][i,n (i)] )) ),h U i=m [α][i,n (i)], := m 1 j=0 H(w j,n, w j,n ) H h=0 (w m,n, w m,n ) j=m+1 H h (w j,n, w j,n ) ( j=m ([α][j,n (+1)] j i=m [β][i,n (i)] ) ) j=m+1 H h(w j,n, w j,n ) H h=0 (w m,n, w m,n ) ( m 1 l=0 (Ll (π n ) l 1 j=0 H(w j,n, w j,n ) H(w l,n, w,n ) m 1 j=l+1 H h(w j,n, w j,n )) ) ( m j=0 (B> j (u n) [α] [j,n (+1)]
6 474 B. Woźna-Szcześnia, A. Zbrzezny j 1 i=0 (B> i (u n ) [β][i,n (i)] )) ) i=m [β][i,n (i)] m 1 j=0 H(w j,n, w j,n ) H h=0 (w m,n, w m,n ) j=m+1 H h (w j,n, w j,n ) j=m [β][j,n (j)] B right(h) (cl(w,n, h)) B > right(h) (cl(w,n, h)) m 1 j=0 H(w j,n, w j,n ) H h=0 (w m,n, w m,n ) j=m+1 H h(w j,n, w j,n ) j=m [β][j,n (j)] ( 1 l=m (Ll (π n )) B> right(h) (cl(w,n, h)) H h=0(w m,n, w m,n ) j=m+1 H h(w j,n, w j,n ) j=m [β][j,n (j)] ( m 1 l=0 (Ll (π n ) l 1 j=0 H(w j,n, w j,n ) H(w l,n, w,n ) m 1 j=l+1 H h(w j,n, w j,n ) m 1 j=l+1 [β][j,n (j)] ) ). where p(w) is a formula that encodes a set of states of M in which p PV holds; H(w, w ) is a formula that encodes equality of two global states; H h=0 (w, w ) is a formula that for two global states encodes the equality of their locations, the equality of values of the original clocs (i.e., clocs from X), and the equality of values of the new clocs (i.e., clocs from Y) but the value of cloc y h. For cloc y h the formula guarantees that its value in the 2nd global state is equal to zero; H h (w, w ) is a formula that for two global states encodes the equality of their locations, the equality of values of the original clocs, and the equality of the values of the new clocs with the potential exception of cloc y h. For cloc y h the formula guarantees that its value in the 2nd global state is greater than zero; H X (w, w ) is a formula that encodes equality of two global states on locations and values of the original clocs; Bj (v) is a formula that encodes that the value represented by the vector of propositional variables v is in arithmetic relation with the value j, where {<,, =,, >}; L l (π j) := B > (u j) H X (w,j, w l,j ). The following theorem, whose proof will be provided in the full version of the paper, guarantees that the bounded model checing problem can be reduced to the SAT-problem. Theorem 1. Let M be a discrete abstract model, and ψ a HLTL formula. Then for every N, ψ is existentially valid in M with the bound if, and only if, the propositional formula [M, ψ] is satisfiable. 4 Experimental results Our SAT-based BMC method for MTL, interpreted over the discrete time models, and discrete timed automata is, to our best nowledge, the first one formally presented in the literature, and moreover there is no any other model checing technique for the considered MTL language. Further, our implementation of the presented BMC method uses Reduced Boolean Circuits (RBC) [1] to represent the propositional formula [M, ψ]. An RBC represents subformulae of [M, ψ] by fresh propositions such that each two identical subformulae correspond to the same proposition.
7 Checing MTL Properties of Discrete Timed Automata For the tests we have used a computer with Intel Core i processor, 8 GB of RAM, and running Linux 2.6. We set the time limit to 900 seconds, and memory limit to 8GB, and we used the state of the art SAT-solver MiniSat 2. The specifications for the described benchmar are given in the universal form, for which we verify the corresponding counterexample formula, i.e., the formula which is negated and interpreted existentially. To evaluate the performance of our SAT-based BMC algorithms for the verification of several properties expressed in MTL, we have analysed a Timed Generic Pipeline Paradigm (TGPP) discrete timed automata model shown in Figure 1. It consists of Producer producing data (P rodready) or being inactive, Consumer receiving data (ConsReady) or being inactive, and a chain of n intermediate Nodes which can be ready for receiving data (Node i Ready), processing data (Node i P roc), or sending data (Node i Send). The example can be scaled by adding intermediate nodes or by changing the length of intervals (i.e., the parameters a, b, c, d, e, f, g, h) that are used to adjust the time properties of Producer, Consumer, and of the intermediate Nodes. start Produce x 0 a x 1 := 0 ProdReady x 0 b Send 1 x 0 := 0 ProdSend start Send 1 x 1 c x 1 := 0 Proc 1 x 1 e x 2 := 0 Node 1Ready x 1 d Node 1Proc x 1 f Node 1Send Send 2 x 1 := 0 start Send n x n c x n := 0 Proc n x n e x n+1 := 0 Node nready x n d Node nproc x n f Node nsend Send n+1 x n := 0 start Send n+1 x n+1 c x n+1 := 0 ConsReady x n+1 d out x n+1 g x n+1 := 0 ConsFree x n+1 h Fig. 1. A Generic Timed Pipeline Paradigm discrete timed automata model We have tested the TGPP discrete timed automata model, scaled in the number of intermediate nodes and with all the intervals set to [1, 3], on the following MTL formulae: ϕ 1 = G [0, ) (P rodsend F [2n+1,2n+2) ConsF ree), where n is the number of nodes. It expresses that each time Producer produces data, then Consumer ϕ 2 receives this data in 2n + 1 time units. = G [0, ) (P rodsend F [2n+1,2n+2) (ConsF ree F [1,2) ConsReady)), where n is the number of nodes. It expresses that each time Producer produces data, then Consumer receives this data in 2n + 1 time units and one unit after that it will be ready to receive another data. Since there is no model checer that supports the MTL properties of systems modelled by discrete timed automata, we were not able to compare results of the application of our method to a TGPP system with others. We provide a preliminary evaluation of our method by means of the running time and the consumed memory. We have observed that for both formulae ϕ 1 and
8 476 B. Woźna-Szcześnia, A. Zbrzezny ϕ 2, we managed to compute the results for 5 nodes in the time of 900 seconds. The exact data for the mentioned maximal number of nodes are the following: ϕ 1 : = 20, f (ϕ 1 ) = 3, bmct is 6.50, bmcm is 19.54, satt is 25.24, satm is 43.00, bmct+satt is 31.74, max(bmcm,satm) is 43.00; ϕ 2 : = 20, f (ϕ 2 ) = 24, bmct is 89.96, bmcm is , satt is , satm is , bmct+satt is , max(bmcm,satm) is ; where is the bound, f (ϕ) is the number of symbolic -paths, bmct is the encoding time, bmcm is memory use for encoding, satt is the satisfiability checing time, satm is memory use for the satisfiability checing. The preliminary results are very promising and indicate that the method is worthy of further investigation for which purpose especially designed benchmars will be developed. 5 Conclusions We have introduced a SAT-based approach to bounded model checing of discrete timed automata and properties expressed in MTL with discrete semantics. The method is based on a translation of the existential model checing for MTL to the existential model checing for HLTL, and then on the translation of the existential model checing for HLTL to the propositional satisfiability problem. The two translations have been implemented and tested on the benchmar, which has been carefully selected in such a way as to reveal the advantages and disadvantages of the presented approaches. References 1. P. A. Abdulla, P. Bjesse, and N. Eén. Symbolic reachability analysis based on SATsolvers. In Proceedings of the 6th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 00), volume 1785 of LNCS, pages Springer-Verlag, R. Alur and D. Dill. A theory of Timed Automata. Theoretical Computer Science, 126(2): , A. Biere, A. Cimatti, E. Clare, O. Strichman, and Y. Zhu. Bounded model checing. In Highly Dependable Software, volume 58 of Advances in Computers, pages Academic Press, E. M. Clare and E. A. Emerson. Design and synthesis of synchronization seletons using Branching Time Temporal Logic. In Proceedings of the Worshop on Logics of Programs, volume 131 of LNCS, pages Springer, E. M. Clare, O. Grumberg, and D. A. Peled. Model Checing. The MIT Press, Cambridge, Massachusetts, E. A. Emerson, A.K. Mo, A. P. Sistla, and J. Srinivasan. Quantitative temporal reasoning. Real-Time Systems, 4(4): , December M. Felder, D. Mandrioli, and A. Morzenti. Proving Properties of Real-Time Systems Through Logical Specifications and Petri Net Models. IEEE Transaction on Software Engineering, 20(2): , 1994.
9 Checing MTL Properties of Discrete Timed Automata C. A. Furia and P. Spoletini. Tomorrow and all our yesterdays: MTL satisfiability over the integers. In Proceedings of the Theoretical Aspects of Computing - ICTAC 2008, volume 5160 of LNCS, pages Springer-Verlag, M. Kacprza, W. Nabiale, A. Niewiadomsi, W. Pencze, A. Pólrola, M.Szreter, B. Woźna, and A. Zbrzezny. VerICS a model checer for nowledge and real-time. Fundamenta Informaticae, 85(1-4): , R. Koymans. Specifying real-time properties with metric temporal logic. Real-Time Systems, 2(4): , A. Lomuscio, W. Pencze, and B. Woźna. Bounded model checing for nowledge and real time. Artificial Intelligence, 171: , W. Pencze, B. Woźna, and A. Zbrzezny. Bounded model checing for the universal fragment of CTL. Fundamenta Informaticae, 51(1-2): , A. Pnueli. The Temporal Logic of Programs. In Proceedings of the 18th IEEE International Symposium on Foundations of Computer Science (FOCS 77), pages IEEE Computer Society Presss, M. Pradella, A. Morzenti, and P. San Pietro. A metric encoding for bounded model checing. In Proceedings of the 2nd World Congress on Formal Methods (FM 2009), volume 5850 of LNCS, pages Springer-Verlag, B. Woźna-Szcześnia and A. Zbrzezny. A translation of the existential model checing problem from MITL to HLTL. Fundamenta Informaticae, 122(4): , A. Zbrzezny. A new discretization for timed automata. In Proceedings of the International Worshop on Concurrency, Specification and Programming (CS&P 04), volume 170 of Informati-Berichte, pages Humboldt University, A. Zbrzezny. A new translation from ECTL to SAT. Fundamenta Informaticae, 120(3 4): , 2012.
Monitoring Metric First-order Temporal Properties
Monitoring Metric First-order Temporal Properties DAVID BASIN, FELIX KLAEDTKE, SAMUEL MÜLLER, and EUGEN ZĂLINESCU, ETH Zurich Runtime monitoring is a general approach to verifying system properties at
Model Checking II Temporal Logic Model Checking
1/32 Model Checking II Temporal Logic Model Checking Edmund M Clarke, Jr School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 2/32 Temporal Logic Model Checking Specification Language:
Formal Verification Coverage: Computing the Coverage Gap between Temporal Specifications
Formal Verification Coverage: Computing the Coverage Gap between Temporal Specifications Sayantan Das Prasenjit Basu Ansuman Banerjee Pallab Dasgupta P.P. Chakrabarti Department of Computer Science & Engineering
Model Checking: An Introduction
Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI
Testing LTL Formula Translation into Büchi Automata
Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland
Software Modeling and Verification
Software Modeling and Verification Alessandro Aldini DiSBeF - Sezione STI University of Urbino Carlo Bo Italy 3-4 February 2015 Algorithmic verification Correctness problem Is the software/hardware system
Static Program Transformations for Efficient Software Model Checking
Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major
Formal Verification of Software
Formal Verification of Software Sabine Broda Department of Computer Science/FCUP 12 de Novembro de 2014 Sabine Broda (DCC-FCUP) Formal Verification of Software 12 de Novembro de 2014 1 / 26 Formal Verification
T-79.186 Reactive Systems: Introduction and Finite State Automata
T-79.186 Reactive Systems: Introduction and Finite State Automata Timo Latvala 14.1.2004 Reactive Systems: Introduction and Finite State Automata 1-1 Reactive Systems Reactive systems are a class of software
Verification of multiagent systems via ordered binary decision diagrams: an algorithm and its implementation
Verification of multiagent systems via ordered binary decision diagrams: an algorithm and its implementation Franco Raimondi Alessio Lomuscio Department of Computer Science King s College London London
GameTime: A Toolkit for Timing Analysis of Software
GameTime: A Toolkit for Timing Analysis of Software Sanjit A. Seshia and Jonathan Kotker EECS Department, UC Berkeley {sseshia,jamhoot}@eecs.berkeley.edu Abstract. Timing analysis is a key step in the
Formal Verification and Linear-time Model Checking
Formal Verification and Linear-time Model Checking Paul Jackson University of Edinburgh Automated Reasoning 21st and 24th October 2013 Why Automated Reasoning? Intellectually stimulating and challenging
Algorithmic Software Verification
Algorithmic Software Verification (LTL Model Checking) Azadeh Farzan What is Verification Anyway? Proving (in a formal way) that program satisfies a specification written in a logical language. Formal
Why? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
Temporal Logics. Computation Tree Logic
Temporal Logics CTL: definition, relationship between operators, adequate sets, specifying properties, safety/liveness/fairness Modeling: sequential, concurrent systems; maximum parallelism/interleaving
Automata-based Verification - I
CS3172: Advanced Algorithms Automata-based Verification - I Howard Barringer Room KB2.20: email: [email protected] March 2006 Supporting and Background Material Copies of key slides (already
logic language, static/dynamic models SAT solvers Verified Software Systems 1 How can we model check of a program or system?
5. LTL, CTL Last part: Alloy logic language, static/dynamic models SAT solvers Today: Temporal Logic (LTL, CTL) Verified Software Systems 1 Overview How can we model check of a program or system? Modeling
On the Modeling and Verification of Security-Aware and Process-Aware Information Systems
On the Modeling and Verification of Security-Aware and Process-Aware Information Systems 29 August 2011 What are workflows to us? Plans or schedules that map users or resources to tasks Such mappings may
Using Patterns and Composite Propositions to Automate the Generation of Complex LTL
University of Texas at El Paso DigitalCommons@UTEP Departmental Technical Reports (CS) Department of Computer Science 8-1-2007 Using Patterns and Composite Propositions to Automate the Generation of Complex
InvGen: An Efficient Invariant Generator
InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic
Bounded LTL Model Checking with Stable Models
Under consideration for publication in Theory and Practice of Logic Programming 1 Bounded LTL Model Checking with Stable Models KEIJO HELJANKO and ILKKA NIEMELÄ Helsinki University of Technology Department
Algorithms for Monitoring Real-time Properties
Algorithms for Monitoring Real-time Properties David Basin, Felix Klaedtke, and Eugen Zălinescu Computer Science Department, ETH Zurich, Switzerland Abstract. We present and analyze monitoring algorithms
Development of dynamically evolving and self-adaptive software. 1. Background
Development of dynamically evolving and self-adaptive software 1. Background LASER 2013 Isola d Elba, September 2013 Carlo Ghezzi Politecnico di Milano Deep-SE Group @ DEIB 1 Requirements Functional requirements
The Model Checker SPIN
The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(
COMPUTER SCIENCE TRIPOS
CST.98.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 3 June 1998 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five
Which Semantics for Neighbourhood Semantics?
Which Semantics for Neighbourhood Semantics? Carlos Areces INRIA Nancy, Grand Est, France Diego Figueira INRIA, LSV, ENS Cachan, France Abstract In this article we discuss two alternative proposals for
CHAPTER 7 GENERAL PROOF SYSTEMS
CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes
From Workflow Design Patterns to Logical Specifications
AUTOMATYKA/ AUTOMATICS 2013 Vol. 17 No. 1 http://dx.doi.org/10.7494/automat.2013.17.1.59 Rados³aw Klimek* From Workflow Design Patterns to Logical Specifications 1. Introduction Formal methods in software
The Course. http://www.cse.unsw.edu.au/~cs3153/
The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,
A first step towards modeling semistructured data in hybrid multimodal logic
A first step towards modeling semistructured data in hybrid multimodal logic Nicole Bidoit * Serenella Cerrito ** Virginie Thion * * LRI UMR CNRS 8623, Université Paris 11, Centre d Orsay. ** LaMI UMR
The Ultimate Undecidability Result for the Halpern Shoham Logic
The Ultimate Undecidability Result for the Halpern Shoham Logic Jerzy Marcinkowski, Jakub Michaliszyn Institute of Computer Science University Of Wrocław {jma,jmi}@cs.uni.wroc.pl Abstract The Halpern Shoham
http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86
Atlantic Electronic http://aejm.ca Journal of Mathematics http://rema.ca Volume 1, Number 1, Summer 2006 pp. 69 86 AUTOMATED RECOGNITION OF STUTTER INVARIANCE OF LTL FORMULAS Jeffrey Dallien 1 and Wendy
Software Verification: Infinite-State Model Checking and Static Program
Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,
Discuss the size of the instance for the minimum spanning tree problem.
3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can
Runtime monitoring of contract regulated web services
Runtime monitoring of contract regulated web services Alessio Lomuscio 1, Wojciech Penczek 2,3, Monika Solanki 1 and Maciej Szreter 2 1 Department of Computing Imperial College London, UK 2 Institute of
Coding and decoding with convolutional codes. The Viterbi Algor
Coding and decoding with convolutional codes. The Viterbi Algorithm. 8 Block codes: main ideas Principles st point of view: infinite length block code nd point of view: convolutions Some examples Repetition
Model Checking based Software Verification
Model Checking based Software Verification 18.5-2006 Keijo Heljanko [email protected] Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24
Representing Reversible Cellular Automata with Reversible Block Cellular Automata
Discrete Mathematics and Theoretical Computer Science Proceedings AA (DM-CCG), 2001, 145 154 Representing Reversible Cellular Automata with Reversible Block Cellular Automata Jérôme Durand-Lose Laboratoire
On strong fairness in UNITY
On strong fairness in UNITY H.P.Gumm, D.Zhukov Fachbereich Mathematik und Informatik Philipps Universität Marburg {gumm,shukov}@mathematik.uni-marburg.de Abstract. In [6] Tsay and Bagrodia present a correct
University of Ostrava. Reasoning in Description Logic with Semantic Tableau Binary Trees
University of Ostrava Institute for Research and Applications of Fuzzy Modeling Reasoning in Description Logic with Semantic Tableau Binary Trees Alena Lukasová Research report No. 63 2005 Submitted/to
Verification of hybrid dynamical systems
Verification of hybrid dynamical systems Jüri Vain Tallinn Technical University/Institute of Cybernetics [email protected] Outline What are Hybrid Systems? Hybrid automata Verification of hybrid systems Verification
Verication by Finitary Abstraction Weizmann Institute of Sciences and Universite Joseph Fourier, Grenoble Fourth International Spin Workshop (SPIN'98) Paris 2.11.98 Joint work with: Y. Kesten Ben Gurion
Fixed-Point Logics and Computation
1 Fixed-Point Logics and Computation Symposium on the Unusual Effectiveness of Logic in Computer Science University of Cambridge 2 Mathematical Logic Mathematical logic seeks to formalise the process of
Bounded Treewidth in Knowledge Representation and Reasoning 1
Bounded Treewidth in Knowledge Representation and Reasoning 1 Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien Luminy, October 2010 1 Joint work with G.
Handout #1: Mathematical Reasoning
Math 101 Rumbos Spring 2010 1 Handout #1: Mathematical Reasoning 1 Propositional Logic A proposition is a mathematical statement that it is either true or false; that is, a statement whose certainty or
Mathematical Induction
Mathematical Induction In logic, we often want to prove that every member of an infinite set has some feature. E.g., we would like to show: N 1 : is a number 1 : has the feature Φ ( x)(n 1 x! 1 x) How
A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation
PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris
Introduction to Software Verification
Introduction to Software Verification Orna Grumberg Lectures Material winter 2013-14 Lecture 4 5.11.13 Model Checking Automated formal verification: A different approach to formal verification Model Checking
INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS
INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS STEVEN P. LALLEY AND ANDREW NOBEL Abstract. It is shown that there are no consistent decision rules for the hypothesis testing problem
DEGREES OF CATEGORICITY AND THE HYPERARITHMETIC HIERARCHY
DEGREES OF CATEGORICITY AND THE HYPERARITHMETIC HIERARCHY BARBARA F. CSIMA, JOHANNA N. Y. FRANKLIN, AND RICHARD A. SHORE Abstract. We study arithmetic and hyperarithmetic degrees of categoricity. We extend
tutorial: hardware and software model checking
tutorial: hardware and software model checking gerard holzmann and anuj puri { gerard anuj } @research.bell-labs.com Bell Labs, USA outline introduction (15 mins) theory and algorithms system modeling
On the Multiple Unicast Network Coding Conjecture
On the Multiple Unicast Networ Coding Conjecture Michael Langberg Computer Science Division Open University of Israel Raanana 43107, Israel [email protected] Muriel Médard Research Laboratory of Electronics
Software Verification and Testing. Lecture Notes: Temporal Logics
Software Verification and Testing Lecture Notes: Temporal Logics Motivation traditional programs (whether terminating or non-terminating) can be modelled as relations are analysed wrt their input/output
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
StaRVOOrS: A Tool for Combined Static and Runtime Verification of Java
StaRVOOrS: A Tool for Combined Static and Runtime Verification of Java Jesús Mauricio Chimento 1, Wolfgang Ahrendt 1, Gordon J. Pace 2, and Gerardo Schneider 3 1 Chalmers University of Technology, Sweden.
Remarks on Non-Fregean Logic
STUDIES IN LOGIC, GRAMMAR AND RHETORIC 10 (23) 2007 Remarks on Non-Fregean Logic Mieczys law Omy la Institute of Philosophy University of Warsaw Poland [email protected] 1 Introduction In 1966 famous Polish
This asserts two sets are equal iff they have the same elements, that is, a set is determined by its elements.
3. Axioms of Set theory Before presenting the axioms of set theory, we first make a few basic comments about the relevant first order logic. We will give a somewhat more detailed discussion later, but
On Omega-Languages Defined by Mean-Payoff Conditions
On Omega-Languages Defined by Mean-Payoff Conditions Rajeev Alur 1, Aldric Degorre 2, Oded Maler 2, Gera Weiss 1 1 Dept. of Computer and Information Science, University of Pennsylvania, USA {alur, gera}@cis.upenn.edu
Generating models of a matched formula with a polynomial delay
Generating models of a matched formula with a polynomial delay Petr Savicky Institute of Computer Science, Academy of Sciences of Czech Republic, Pod Vodárenskou Věží 2, 182 07 Praha 8, Czech Republic
Class notes Program Analysis course given by Prof. Mooly Sagiv Computer Science Department, Tel Aviv University second lecture 8/3/2007
Constant Propagation Class notes Program Analysis course given by Prof. Mooly Sagiv Computer Science Department, Tel Aviv University second lecture 8/3/2007 Osnat Minz and Mati Shomrat Introduction This
A Propositional Dynamic Logic for CCS Programs
A Propositional Dynamic Logic for CCS Programs Mario R. F. Benevides and L. Menasché Schechter {mario,luis}@cos.ufrj.br Abstract This work presents a Propositional Dynamic Logic in which the programs are
Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection
Runtime Verification - Monitor-oriented Programming - Monitor-based Runtime Reflection Martin Leucker Technische Universität München (joint work with Andreas Bauer, Christian Schallhart et. al) FLACOS
Factoring General Games using Propositional Automata
Factoring General Games using Propositional Automata Evan Cox, Eric Schkufza, Ryan Madsen and Michael R. Genesereth Stanford University, CA, USA Abstract In this paper we propose the design of a more robust
FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM
International Journal of Innovative Computing, Information and Control ICIC International c 0 ISSN 34-48 Volume 8, Number 8, August 0 pp. 4 FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT
Predicate Logic Review
Predicate Logic Review UC Berkeley, Philosophy 142, Spring 2016 John MacFarlane 1 Grammar A term is an individual constant or a variable. An individual constant is a lowercase letter from the beginning
Degree Hypergroupoids Associated with Hypergraphs
Filomat 8:1 (014), 119 19 DOI 10.98/FIL1401119F Published by Faculty of Sciences and Mathematics, University of Niš, Serbia Available at: http://www.pmf.ni.ac.rs/filomat Degree Hypergroupoids Associated
ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS
PROCEEDINGS OF THE YEREVAN STATE UNIVERSITY Physical and Mathematical Sciences 2012 1 p. 43 48 ON FUNCTIONAL SYMBOL-FREE LOGIC PROGRAMS I nf or m at i cs L. A. HAYKAZYAN * Chair of Programming and Information
Informatique Fondamentale IMA S8
Informatique Fondamentale IMA S8 Cours 1 - Intro + schedule + finite state machines Laure Gonnord http://laure.gonnord.org/pro/teaching/ [email protected] Université Lille 1 - Polytech Lille
Program Monitoring with LTL in EAGLE
Howard Barringer University of Manchester, England Program Monitoring with LTL in EAGLE Allen Goldberg, Klaus Havelund Kestrel Technology, NASA Ames Research Center, USA Koushik Sen University of Illinois,
Mathematical Induction. Lecture 10-11
Mathematical Induction Lecture 10-11 Menu Mathematical Induction Strong Induction Recursive Definitions Structural Induction Climbing an Infinite Ladder Suppose we have an infinite ladder: 1. We can reach
A computational model for MapReduce job flow
A computational model for MapReduce job flow Tommaso Di Noia, Marina Mongiello, Eugenio Di Sciascio Dipartimento di Ingegneria Elettrica e Dell informazione Politecnico di Bari Via E. Orabona, 4 70125
Automated Route Planning for Milk-Run Transport Logistics with the NuSMV Model Checker
IEICE TRANS. INF. & SYST., VOL.E96 D, NO.12 DECEMBER 2013 2555 PAPER Special Section on Parallel and Distributed Computing and Networking Automated Route Planning for Milk-Run Transport Logistics with
CS510 Software Engineering
CS510 Software Engineering Propositional Logic Asst. Prof. Mathias Payer Department of Computer Science Purdue University TA: Scott A. Carr Slides inspired by Xiangyu Zhang http://nebelwelt.net/teaching/15-cs510-se
Reliability Guarantees in Automata Based Scheduling for Embedded Control Software
1 Reliability Guarantees in Automata Based Scheduling for Embedded Control Software Santhosh Prabhu, Aritra Hazra, Pallab Dasgupta Department of CSE, IIT Kharagpur West Bengal, India - 721302. Email: {santhosh.prabhu,
2 Temporal Logic Model Checking
Bounded Model Checking Using Satisfiability Solving Edmund Clarke 1, Armin Biere 2, Richard Raimi 3, and Yunshan Zhu 4 1 Computer Science Department, CMU, 5000 Forbes Avenue Pittsburgh, PA 15213, USA,
Undergraduate Notes in Mathematics. Arkansas Tech University Department of Mathematics
Undergraduate Notes in Mathematics Arkansas Tech University Department of Mathematics An Introductory Single Variable Real Analysis: A Learning Approach through Problem Solving Marcel B. Finan c All Rights
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z
FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z DANIEL BIRMAJER, JUAN B GIL, AND MICHAEL WEINER Abstract We consider polynomials with integer coefficients and discuss their factorization
Reducing Clocks in Timed Automata while Preserving Bisimulation
Reducing Clocks in Timed Automata while Preserving Bisimulation Shibashis Guha Chinmay Narayan S. Arun-Kumar Indian Institute of Technology Delhi {shibashis, chinmay, sak}@cse.iitd.ac.in arxiv:1404.6613v2
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy Kim S. Larsen Odense University Abstract For many years, regular expressions with back referencing have been used in a variety
a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.
Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given
Using semantic properties for real time scheduling
Using semantic properties for real time scheduling Christian Fotsing, Annie Geniet LISI, ENSMA 1 Av. Clement Ader BP 40109-86961 Futuroscope Chasseneuil-France [email protected], [email protected]
Introduction to Formal Methods. Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm
Introduction to Formal Methods Các Phương Pháp Hình Thức Cho Phát Triển Phần Mềm Outline Introduction Formal Specification Formal Verification Model Checking Theorem Proving Introduction Good papers to
Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison
Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison Tomi Janhunen 1, Ilkka Niemelä 1, Johannes Oetsch 2, Jörg Pührer 2, and Hans Tompits 2 1 Aalto University, Department
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay
Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding
Non-deterministic Semantics and the Undecidability of Boolean BI
1 Non-deterministic Semantics and the Undecidability of Boolean BI DOMINIQUE LARCHEY-WENDLING, LORIA CNRS, Nancy, France DIDIER GALMICHE, LORIA Université Henri Poincaré, Nancy, France We solve the open
Lecture 4 Online and streaming algorithms for clustering
CSE 291: Geometric algorithms Spring 2013 Lecture 4 Online and streaming algorithms for clustering 4.1 On-line k-clustering To the extent that clustering takes place in the brain, it happens in an on-line
Specification and Analysis of Contracts Lecture 1 Introduction
Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider [email protected] http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.
