Catálogo de publicaciones - libros

Compartir en
redes sociales


Theorem Proving in Higher Order Logics: 18th International Conference, TPHOLs 2005, Oxford, UK, August 22-25, 2005, Proceedings

Joe Hurd ; Tom Melham (eds.)

En conferencia: 18º International Conference on Theorem Proving in Higher Order Logics (TPHOLs) . Oxford, UK . August 22, 2005 - August 25, 2005

Resumen/Descripción – provisto por la editorial

No disponible.

Palabras clave – provistas por la editorial

Theory of Computation; Computer System Implementation; Mathematical Logic and Formal Languages; Logics and Meanings of Programs; Software Engineering; Artificial Intelligence (incl. Robotics)

Disponibilidad
Institución detectada Año de publicación Navegá Descargá Solicitá
No detectada 2005 SpringerLink

Información

Tipo de recurso:

libros

ISBN impreso

978-3-540-28372-0

ISBN electrónico

978-3-540-31820-0

Editor responsable

Springer Nature

País de edición

Reino Unido

Fecha de publicación

Información sobre derechos de publicación

© Springer-Verlag Berlin Heidelberg 2005

Tabla de contenidos

Meta Reasoning in ACL2

Warren A. Hunt; Matt Kaufmann; Robert Bellarmine Krug; J Strother Moore; Eric Whitman Smith

The ACL2 system is based upon a first-order logic and implements traditional first-order reasoning techniques, notably (conditional) rewriting, as well as extensions including mathematical induction and a “functional instantiation” capability for mimicking second-order reasoning. Additionally, one can engage in meta-reasoning — using ACL2 to reason, and prove theorems, about ACL2’s logic from within ACL2. One can then use these theorems to augment ACL2’s proof engine with custom extensions. ACL2 also supports forms of meta-level control of its rewriter. Relatively recent additions of these forms of control, as well as extensions to ACL2’s long-standing meta-reasoning capability, allow a greater range of rules to be written than was possible before, allowing one to specify more comprehensive proof strategies.

- Regular Papers | Pp. 163-178

Reasoning About Java Programs with Aliasing and Frame Conditions

Claude Marché; Christine Paulin-Mohring

Several tools exist for reasoning about programs annotated with specifications. A main issue is to deal with possible between objects and to handle correctly the limiting the part of memory that a method is allowed to modify. Tools designed for automatic use (like ) are not complete and even not necessarily correct. On the other side, tools which offer a full modeling of the program require a heavy user interaction for discharging proof obligations. In this paper, we present the modeling of programs used in the tool, which generates proof obligations expressed in a logic language suitable for both automatic and interactive reasoning. Using the automatic theorem prover, we are able to establish automatically more properties than static analysis tools, with a method which is guaranteed to be sound, assuming only the correctness of our logical interpretation of programs and specifications.

- Regular Papers | Pp. 179-194

Real Number Calculations and Theorem Proving

César Muñoz; David Lester

Wouldn’t it be nice to be able to use ordinary real number expressions within proof assistants? In this paper we outline how this can be done within a theorem proving framework. First, we formally establish upper and lower bounds for trigonometric and transcendental functions. Then, based on these bounds, we develop a rational interval arithmetic where real number calculations can be performed in an algebraic setting. This pragmatic approach has been implemented as a strategy in PVS. The strategy provides a safe way to perform explicit calculations over real numbers in formal proofs.

- Regular Papers | Pp. 195-210

Verifying a Secure Information Flow Analyzer

David A. Naumann

Denotational semantics for a substantial fragment of Java is formalized by deep embedding in PVS, making extensive use of dependent types. A static analyzer for secure information flow for this language is proved correct, that is, it enforces noninterference.

- Regular Papers | Pp. 211-226

Proving Bounds for Real Linear Programs in Isabelle/HOL

Steven Obua

Linear programming is a basic mathematical technique for optimizing a linear function on a domain that is constrained by linear inequalities. We restrict ourselves to linear programs on bounded domains that involve only real variables. In the context of theorem proving, this restriction makes it possible for any given linear program to obtain certificates from external linear programming tools that help to prove arbitrarily precise bounds for the given linear program. To this end, an explicit formalization of matrices in Isabelle/HOL is presented, and how the concept of lattice-ordered rings allows for a smooth integration of matrices with the axiomatic type classes of Isabelle.

As our work is a contribution to the Flyspeck project, we argue that with the above techniques it is now possible to prove bounds for the linear programs arising in the proof of the Kepler conjecture sufficiently fast.

- Regular Papers | Pp. 227-244

Essential Incompleteness of Arithmetic Verified by Coq

Russell O’Connor

A constructive proof of the Gödel-Rosser incompleteness theorem [9] has been completed using Coq proof assistant. Some theory of classical first-order logic over an arbitrary language is formalized. A development of primitive recursive functions is given, and all primitive recursive functions are proved to be representable in a weak axiom system. Formulas and proofs are encoded as natural numbers, and functions operating on these codes are proved to be primitive recursive. The weak axiom system is proved to be essentially incomplete. In particular, Peano arithmetic is proved to be consistent in Coq’s type theory and therefore is incomplete.

- Regular Papers | Pp. 245-260

Verification of BDD Normalization

Veronika Ortner; Norbert Schirmer

We present the verification of the normalization of a binary decision diagram (BDD). The normalization follows the original algorithm presented by Bryant in 1986 and transforms an ordered BDD in a reduced, ordered and shared BDD. The verification is based on Hoare logics and is carried out in the theorem prover Isabelle/HOL. The work is both a case study for verification of procedures on a complex pointer structure, as well as interesting on its own, since it is the first proof of functional correctness of the pointer based normalization process we are aware of.

- Regular Papers | Pp. 261-277

Extensionality in the Calculus of Constructions

Nicolas Oury

This paper presents a method to translate a proof in an extensional version of the Calculus of Constructions into a proof in the Calculus of Inductive Constructions extended with a few axioms. We use a specific equality in order to translate the extensional conversion relation into an intensional system.

- Regular Papers | Pp. 278-293

A Mechanically Verified, Sound and Complete Theorem Prover for First Order Logic

Tom Ridge; James Margetson

We present a system of first order logic, together with soundness and completeness proofs wrt. standard first order semantics. Proofs are mechanised in Isabelle/HOL. Our definitions are computable, allowing us to derive an algorithm to test for first order validity. This algorithm may be executed in Isabelle/HOL using the rewrite engine. Alternatively the algorithm has been ported to OCaML.

- Regular Papers | Pp. 294-309

A Generic Network on Chip Model

Julien Schmaltz; Dominique Borrione

We present a generic network on chip model (named ) intended to serve as a reference for the design and the validation of high level specifications of communication virtual modules. The definition of the model relies on three independent groups of constrained functions: routing and topology, scheduling, interfaces. The model identifies the sufficient constraints that these functions must satisfy in order to prove the correctness of . Hence, one can concentrate his efforts on the design and the verification of one group. As long as the constraints are satisfied the overall system correctness is still valid. We show some concrete instances of . One of them is a state-of-the-art network taken from industry.

- Regular Papers | Pp. 310-325