CAV 2013: Proceedings of the 25th International Conference on Computer Aided Verification - Volume 8044
Publisher: Springer-Verlag New York, Inc.
We present an LTL model checker whose code has been completely verified using the Isabelle theorem prover. The checker consists of over 4000 lines of ML code. The code is produced using recent Isabelle technology called the Refinement Framework, which allows us to split its correctness proof into 1 the ...
CAV'13: Proceedings of the 25th international conference on Computer Aided Verification
We present an LTL model checker whose code has been completely verified using the Isabelle theorem prover. The checker consists of over 4000 lines of ML code. The code is produced using recent Isabelle technology called the Refinement Framework, which allows us to split its correctness proof into (1) the ...
TPHOLs '09: Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
We present the implementation in Isabelle/HOL of a translation of LTL formulae into Büchi automata. In automaton-based model checking, systems are modelled as transition systems, and correctness properties stated as formulae of temporal logic are translated into corresponding automata. An LTL formula is represented by a (generalised) Büchi automaton that ...
TAP '09: Proceedings of the 3rd International Conference on Tests and Proofs
We present an algorithm for falsifying safety properties of hybrid systems, i.e., for finding a trajectory to an unsafe state. The approach is to approximate how close a point is to being an initial point of an error trajectory using a real-valued quality function, and then to use numerical optimisation ...
Model Checking and Artificial Intelligence: 5th International Workshop, MoChArt 2008, Patras, Greece, July 21, 2008. Revised Selected and Invited Papers
In artificial intelligence, a <em>relaxation</em> of a problem is an overapproximation whose solution in every state of an explicit search provides a heuristic solution distance estimate. The heuristic guides the exploration, potentially shortening the search by exponentially many search states. The big question is how a good relaxation for the ...
predicate abstraction, timed automata, abstraction refinement, Directed model checking
CPAIOR '07: Proceedings of the 4th international conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems
A <em>linear pseudo-Boolean constraint</em>(LPB) is an expression of the form <em>a</em><Subscript>1</Subscript>·�<Subscript>1</Subscript>+ ... + <em>a</em><Subscript><em>m</em></Subscript>·�<Subscript><em>m</em></Subscript>� <em>d</em>, where each �<Subscript><em>i</em></Subscript>is a <em>literal</em>(it assumes the value 1 or 0 depending on whether a propositional variable <em>x</em><Subscript><em>i</em></Subscript>is true or false) and <em>a</em><Subscript>1</Subscript>,...,<em>a</em><Subscript><em>m</em></Subscript>,<em>d</em>are natural numbers. An LPB is a generalisation of a propositional clause, on ...
Model Checking and Artificial Intelligence: 4th Workshop, MoChArt IV, Riva del Garda, Italy, August 29, 2006, Revised Selected and Invited Papers
We focus on checking safety properties in networks of extended timed automata, with the well-known UPPAAL system. We show how to use predicate abstraction, in the sense used in model checking, to generate search guidance, in the sense used in Artificial Intelligence (AI). This contributes another family of heuristic functions ...
ACM Transactions on Computational Logic (TOCL): Volume 5 Issue 3, July 2004
Citation Count: 4
Downloads (6 Weeks): 0, Downloads (12 Months): 1, Downloads (Overall): 293
Full text available:
In logic programming, dynamic scheduling indicates the feature by means of which the choice of the atom to be selected at each resolution step is done at runtime and does not follow a fixed selection rule such as the left-to-right one of Prolog. Input-consuming derivations were introduced to model dynamic ...
Logic programs, dynamic scheduling, simply moded, termination
FLOPS '02: Proceedings of the 6th International Symposium on Functional and Logic Programming
In typed logic programming, the head condition states that for each clause defining a predicate p , the arguments of the clause head must have the declared type of p , rather than a proper polymorphic instance. In typed functional programming, polymorphic recursion means that in a recursive definition of ...
Theory and Practice of Logic Programming: Volume 2 Issue 3, May 2002
Publisher: Cambridge University Press
Termination of logic programs depends critically on the selection rule, i.e. the rule that determines which atom is selected in each resolution step. In this article, we classify programs (and queries) according to the selection rules for which they terminate. This is a survey and unified view on different approaches ...
logic program, dynamic scheduling, level mapping, norm, universal termination, control, selection rule, left-termination
LPAR '01: Proceedings of the Artificial Intelligence on Logic for Programming
Analysis of (partial) groundness is an important application of abstract interpretation. There are several proposals for improving the precision of such an analysis by exploiting type information, including our own work , where we had shown how the information present in the type declarations of a program can be used ...
Theory and Practice of Logic Programming: Volume 1 Issue 4, July 2001
Publisher: Cambridge University Press
We present verification methods for logic programs with delay declarations. The verified properties are termination and freedom from errors related to built-ins. Concerning termination, we present two approaches. The first approach tries to eliminate the well-known problem of speculative output bindings. The second approach is based on identifying the predicates ...
errors, modes, termination, built-ins, delay declarations, selection rule, types, verification
ESOP '01: Proceedings of the 10th European Symposium on Programming Languages and Systems
In logic programming, dynamic scheduling refers to a situation where the selection of the atom in each resolution (computation) step is determined at runtime, as opposed to a fixed selection rule such as the left-to-right one of Prolog. This has applications e.g. in parallel programming. A mechanism to control dynamic ...
FLOPS '01: Proceedings of the 5th International Symposium on Functional and Logic Programming
We consider prescriptive type systems for logic programs (as in Gödel or Mercury). In such systems, the typing is static, but it guarantees an operational property: if a program is "well-typed", then all derivations starting in a "well-typed" query are again "well-typed". This property has been called subject reduction. We ...
FST TCS 2000: Proceedings of the 20th Conference on Foundations of Software Technology and Theoretical Computer Science
We consider a general prescriptive type system with parametric polymorphism and subtyping for logic programs. The property of subject reduction expresses the consistency of the type system w.r.t. the execution model: if a program is "well-typed", then all derivations starting in a "well-typed" goal are again "well-typed". It is well-established ...
Proceedings of the 1999 international conference on Logic programming
Publisher: Massachusetts Institute of Technology
LOPSTR'99: Selected papers from the 9th International Workshop on Logic Programming Synthesis and Transformation
ESOP '99: Proceedings of the 8th European Symposium on Programming Languages and Systems
Def, the domain of definite Boolean functions, expresses (sure) dependencies between the program variables of, say, a constraint program. Share, on the other hand, captures the (possible) variable sharing between the variables of a logic program. The connection between these domains has been explored in the domain comparison and decomposition ...
PLILP '98/ALP '98: Proceedings of the 10th International Symposium on Principles of Declarative Programming
LOPSTR '98: Proceedings of the 8th International Workshop on Logic Programming Synthesis and Transformation
This paper presents several verification methods for logic programs with delay declarations. It is shown how type and instantiation errors related to built-ins can be prevented, and how termination can be ensured. Three features are distinctive of this work: it is assumed that predicates can be used in several modes; ...