Proving pointer programs in higher-order logic
نویسندگان
چکیده
منابع مشابه
Proving Pointer Programs in Higher-Order Logic
This paper develops sound modelling and reasoning methods for imperative programs with pointers: heaps are modelled as mappings from addresses to values, and pointer structures are mapped to higherlevel data types for verification. The programming language is embedded in higher-order logic, its Hoare logic is derived. The whole development is purely definitional and thus sound. The viability of...
متن کاملProving Pointer Programs in Hoare Logic
It is possible, but difficult, to reason in Hoare logic about programs which address and modify data structures defined by pointers. The challenge is to approach the simplicity of Hoare logic’s treatment of variable assignment, where substitution affects only relevant assertion formulæ. The axiom of assignment to object components treats each component name as a pointerindexed array. This permi...
متن کاملProving Program Termination in Higher Order Logic∗
We suggest two simple additions to packages that use wellfounded recursion to justify termination of recursive programs: The contraction condition, to be proved in cases when termination conditions are difficult or impossible to extract automatically; user-supplied inductive invariants in cases of nested recursion. We have implemented these additions in Isabelle/HOL and demonstrated their usefu...
متن کاملApplication Specific Higher Order Logic Theorem Proving
Theorem proving allows the formal verification of the correctness of very large systems. In order to increase the acceptance of theorem proving systems during the design process, we implemented higher order logic proof systems for ANSI-C and Verilog within a framework for application specific proof systems. Furthermore, we implement the language of the PVS theorem prover as well-established hig...
متن کاملVerifying Higher-Order Imperative Programs with Higher-Order Separation Logic
In this thesis I show is that it is possible to give modular correctness proofs of interesting higher-order imperative programs using higher-order separation logic. To do this, I develop a model higher-order imperative programming language, and develop a program logic for it. I demonstrate the power of my program logic by verifying a series of examples, culminating in the correctness proof of a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Information and Computation
سال: 2005
ISSN: 0890-5401
DOI: 10.1016/j.ic.2004.10.007