Skip to main content
Top

2008 | Book

Automated Reasoning

4th International Joint Conference, IJCAR 2008 Sydney, Australia, August 12-15, 2008 Proceedings

Editors: Alessandro Armando, Peter Baumgartner, Gilles Dowek

Publisher: Springer Berlin Heidelberg

Book Series : Lecture Notes in Computer Science

insite
SEARCH

About this book

This book constitutes the refereed proceedings of the 4th International Joint Conference on Automated Reasoning, IJCAR 2008, held in Sydney, Australia, in August 2008. The 26 revised full research papers and 13 revised system descriptions presented together with 4 invited papers and a summary of the CASC-J4 systems competition were carefully reviewed and selected from 80 full paper and 17 system description submissions. The papers address the entire spectrum of research in automated reasoning and are organized in topical sections on specific theories, automated verification, protocol verification, system descriptions, modal logics, description logics, equational theories, theorem proving, CASC, the 4th IJCAR ATP system competition, logical frameworks, and tree automata.

Table of Contents

Frontmatter

Session 1: Invited Talk

Software Verification: Roles and Challenges for Automatic Decision Procedures

Software model checking has become popular with the successful use of predicate abstraction and refinement techniques to find real bugs in low-level C programs. At the same time, verification approaches based on abstract interpretation and symbolic execution are also making headway in real practice. Much of the recent progress is fueled by advancements in automatic decision procedures and constraint solvers, which lie at the computational heart of these approaches. In this talk, I will describe our experience with several of these verification approaches, highlighting the roles played by automatic decision procedures and their interplay with the applications. Specifically, I will focus on SAT- and SMT-based model checking, combined with abstract domain analysis based on polyhedra representations. I will also describe some challenges from software verification that can motivate interesting research problems in this area.

Aarti Gupta

Session 2: Specific Theories

Proving Bounds on Real-Valued Functions with Computations

Interval-based methods are commonly used for computing numerical bounds on expressions and proving inequalities on real numbers. Yet they are hardly used in proof assistants, as the large amount of numerical computations they require keeps them out of reach from deductive proof processes. However, evaluating programs inside proofs is an efficient way for reducing the size of proof terms while performing numerous computations. This work shows how programs combining automatic differentiation with floating-point and interval arithmetic can be used as efficient yet certified solvers. They have been implemented in a library for the Coq proof system. This library provides tactics for proving inequalities on real-valued expressions.

Guillaume Melquiond
Linear Quantifier Elimination

This paper presents verified quantifier elimination procedures for dense linear orders (DLO), for real and for integer linear arithmetic. The DLO procedures are new. All procedures are defined and verified in the theorem prover Isabelle/HOL, are executable and can be applied to HOL formulae themselves (by reflection).

Tobias Nipkow
Quantitative Separation Logic and Programs with Lists

This paper presents an extension of a decidable fragment of Separation Logic for singly-linked lists, defined by Berdine, Calcagno and O’Hearn [8]. Our main extension consists in introducing atomic formulae of the form

ls

k

(

x

,

y

) describing a list segment of length

k

, stretching from

x

to

y

, where

k

is a logical variable interpreted over positive natural numbers, that may occur further inside Presburger constraints.

We study the decidability of the full first-order logic combining unrestricted quantification of arithmetic and location variables. Although the full logic is found to be undecidable, validity of entailments between formulae with the quantifier prefix in the language

$\exists^*{\{\exists_\mathbb{N},\forall_\mathbb{N}\}^*}$

We provide here a model theoretic method, based on a parametric notion of shape graphs.

We have implemented our decision technique, providing a fully automated framework for the verification of quantitative properties expressed as pre- and post-conditions on programs working on lists and integer counters.

Marius Bozga, Radu Iosif, Swann Perarnau
On Automating the Calculus of Relations

Relation algebras provide abstract equational axioms for the calculus of binary relations. They name an established area of mathematics and have found numerous applications in computing. We prove more than hundred theorems of relation algebras with off-the-shelf automated theorem provers. They form a basic calculus from which more advanced applications can be explored. We also present two automation experiments from the formal methods literature. Our results further demonstrate the feasibility of automated deduction with complex algebraic structures. They also open a new perspective for automated deduction in relational formal methods.

Peter Höfner, Georg Struth

Session 3: Automated Verification

Towards SMT Model Checking of Array-Based Systems

We introduce the notion of array-based system as a suitable abstraction of infinite state systems such as broadcast protocols or sorting programs. By using a class of quantified-first order formulae to symbolically represent array-based systems, we propose methods to check safety (invariance) and liveness (recurrence) properties on top of Satisfiability Modulo Theories solvers. We find hypotheses under which the verification procedures for such properties can be fully mechanized.

Silvio Ghilardi, Enrica Nicolini, Silvio Ranise, Daniele Zucchelli
Preservation of Proof Obligations from Java to the Java Virtual Machine

While program verification environments typically target source programs, there is an increasing need to provide strong guarantees for executable programs.

We establish that it is possible to reuse the proof that a source Java program meets its specification to show that the corresponding JVM program, obtained by non-optimizing compilation, meets the same specification. More concretely, we show that verification condition generators for Java and JVM programs generate the same set of proof obligations, when applied to a program

p

and its compilation [[

p

]] respectively.

Preservation of proof obligations extends the applicability of Proof Carrying Code, by allowing certificate generation to rely on existing verification technology.

Gilles Barthe, Benjamin Grégoire, Mariela Pavlova
Efficient Well-Definedness Checking

Formal specifications often contain partial functions that may lead to ill-defined terms. A common technique to eliminate ill-defined terms is to require well-definedness conditions to be proven. The main advantage of this technique is that it allows us to reason in a two-valued logic even if the underlying specification language has a three-valued semantics. Current approaches generate well-definedness conditions that grow exponentially with respect to the input formula. As a result, many tools prove shorter, but stronger approximations of these well-definedness conditions instead.

We present a procedure which generates well-definedness conditions that grow linearly with respect to the input formula. The procedure has been implemented in the Spec# verification tool. We also present empirical results that demonstrate the improvements made.

Ádám Darvas, Farhad Mehta, Arsenii Rudich

Session 4: Protocol Verification

Proving Group Protocols Secure Against Eavesdroppers

Security protocols are small programs designed to ensure properties such as secrecy of messages or authentication of parties in a hostile environment. In this paper we investigate automated verification of a particular type of security protocols, called

group protocols

, in the presence of an eavesdropper, i.e., a passive attacker. The specificity of group protocols is that the number of participants is not bounded. Our approach consists in representing an infinite set of messages exchanged during an unbounded number of sessions, one session for each possible number of participants, as well as the infinite set of associated secrets. We use so-called visibly tree automata with memory and structural constraints (introduced recently by Comon-Lundh et al.) to represent over-approximations of these two sets. We identify restrictions on the specification of protocols which allow us to reduce the attacker capabilities guaranteeing that the above mentioned class of automata is closed under the application of the remaining attacker rules. The class of protocols respecting these restrictions is large enough to cover several existing protocols, such as the GDH family, GKE, and others.

Steve Kremer, Antoine Mercier, Ralf Treinen

Session 5: System Descriptions 1

Session 6: Invited Talk

The Complexity of Conjunctive Query Answering in Expressive Description Logics

Conjunctive query answering plays a prominent role in applications of description logics (DLs) that involve instance data, but its exact complexity was a long-standing open problem. We determine the complexity of conjunctive query answering in expressive DLs between

$\mathcal{ALC}$

and

$\mathcal{SHIQ}$

, and thus settle the problem. In a nutshell, we show that conjunctive query answering is 2

ExpTime

-complete in the presence of inverse roles, and only

ExpTime

-complete without them.

Carsten Lutz

Session 7: Modal Logics

A General Tableau Method for Deciding Description Logics, Modal Logics and Related First-Order Fragments

This paper presents a general method for proving termination of tableaux-based procedures for modal-type logics and related first-order fragments. The method is based on connections between filtration arguments and tableau blocking techniques. The method provides a general framework for developing tableau-based decision procedures for a large class of logics. In particular, the method can be applied to many well-known description and modal logics. The class includes traditional modal logics such as

S4

and modal logics with the universal modality, as well as description logics such as

$\mathcal{ALC}$

with nominals and general TBoxes. Also contained in the class are harder and less well-studied modal logics with complex modalities and description logics with complex role operators such as Boolean modal logic, and the description logic

$\mathcal{ALBO}$

. In addition, the techniques allow us to specify tableau-based decision procedures for related solvable fragments of first-order logic, including the two-variable fragment of first-order logic.

Renate A. Schmidt, Dmitry Tishkovsky
Terminating Tableaux for Hybrid Logic with the Difference Modality and Converse

We present the first terminating tableau calculus for basic hybrid logic with the difference modality and converse modalities. The language under consideration is basic multi-modal logic extended with nominals, the satisfaction operator, converse, global and difference modalities. All of the constructs are handled natively.

To obtain termination, we extend chain-based blocking for logics with converse by a complete treatment of difference.

Completeness of our calculus is shown via a model existence theorem that refines previous constructions by distinguishing between modal and equational state equivalence.

Mark Kaminski, Gert Smolka
Automated Implicit Computational Complexity Analysis (System Description)

Recent studies have provided many characterisations of the class of polynomial time computable functions through term rewriting techniques. In this paper we describe a (fully automatic and command-line based) system that implements the majority of these techniques and present experimental findings to simplify comparisons.

Martin Avanzini, Georg Moser, Andreas Schnabl
LogAnswer - A Deduction-Based Question Answering System (System Description)

LogAnswer is an open domain question answering system which employs an automated theorem prover to infer correct replies to natural language questions. For this purpose LogAnswer operates on a large axiom set in first-order logic, representing a formalized semantic network acquired from extensive textual knowledge bases. The logicbased approach allows the formalization of semantics and background knowledge, which play a vital role in deriving answers. We present the functional LogAnswer prototype, which consists of automated theorem provers for logical answer derivation as well as an environment for deep linguistic processing.

Ulrich Furbach, Ingo Glöckner, Hermann Helbig, Björn Pelzer
A High-Level Implementation of a System for Automated Reasoning with Default Rules (System Description)

An overview of a system modelling an intelligent agent being able to reason by using default rules is given. The semantics of the qualitative default rules is defined via ordinal conditional functions which model the epistemic state of the agent, providing her with the basic equipment to perform different knowledge management and belief revision tasks. Using the concept of Abstract State Machines, the fully operational system was developed in AsmL, allowing for a high-level implementation that minimizes the gap between the mathematical specification of the underlying concepts and the executable code in the implemented system.

Christoph Beierle, Gabriele Kern-Isberner, Nicole Koch
The Abella Interactive Theorem Prover (System Description)

Abella [3] is an interactive system for reasoning about aspects of object languages that have been formally presented through recursive rules based on syntactic structure. Abella utilizes a two-level logic approach to specification and reasoning. One level is defined by a specification logic which supports a transparent encoding of structural semantics rules and also enables their execution. The second level, called the reasoning logic, embeds the specification logic and allows the development of proofs of properties about specifications. An important characteristic of both logics is that they exploit the

λ

-tree syntax approach to treating binding in object languages. Amongst other things, Abella has been used to prove normalizability properties of the

λ

-calculus, cut admissibility for a sequent calculus and type uniqueness and subject reduction properties. This paper discusses the logical foundations of Abella, outlines the style of theorem proving that it supports and finally describes some of its recent applications.

Andrew Gacek
LEO-II - A Cooperative Automatic Theorem Prover for Classical Higher-Order Logic (System Description)

LEO-II is a standalone, resolution-based higher-order theorem prover designed for effective cooperation with specialist provers for natural fragments of higher-order logic. At present LEO-II can cooperate with the first-order automated theorem provers E, SPASS, and Vampire. The improved performance of LEO-II, especially in comparison to its predecessor LEO, is due to several novel features including the exploitation of term sharing and term indexing techniques, support for primitive equality reasoning, and improved heuristics at the calculus level. LEO-II is implemented in Objective Caml and its problem representation language is the new TPTP THF language.

Christoph Benzmüller, Lawrence C. Paulson, Frank Theiss, Arnaud Fietzke
KeYmaera: A Hybrid Theorem Prover for Hybrid Systems (System Description)

KeYmaera is a hybrid verification tool for hybrid systems that combines deductive, real algebraic, and computer algebraic prover technologies. It is an automated and interactive theorem prover for a natural specification and verification logic for hybrid systems. KeYmaera supports

differential dynamic logic

, which is a real-valued first-order dynamic logic for hybrid programs, a program notation for hybrid automata. For automating the verification process, KeYmaera implements a generalized free-variable sequent calculus and automatic proof strategies that decompose the hybrid system specification symbolically. To overcome the complexity of real arithmetic, we integrate real quantifier elimination following an iterative background closure strategy. Our tool is particularly suitable for verifying parametric hybrid systems and has been used successfully for verifying collision avoidance in case studies from train control and air traffic management.

André Platzer, Jan-David Quesel

Session 8: Herbrand Award Ceremony

Session 9: Description Logics

Automata-Based Axiom Pinpointing

Axiom pinpointing has been introduced in description logics (DL) to help the user understand the reasons why consequences hold by computing minimal subsets of the knowledge base that have the consequence in question (MinA). Most of the pinpointing algorithms described in the DL literature are obtained as extensions of tableau-based reasoning algorithms for computing consequences from DL knowledge bases. In this paper, we show that automata-based algorithms for reasoning in DLs can also be extended to pinpointing algorithms. The idea is that the tree automaton constructed by the automata-based approach can be transformed into a weighted tree automaton whose so-called behaviour yields a pinpointing formula, i.e., a monotone Boolean formula whose minimal valuations correspond to the MinAs. We also develop an approach for computing the behaviour of a given weighted tree automaton.

Franz Baader, Rafael Peñaloza
Individual Reuse in Description Logic Reasoning

Tableau calculi are the state-of-the-art for reasoning in description logics (DL). Despite recent improvements, tableau-based reasoners still cannot process certain knowledge bases (KBs), mainly because they end up building very large models. To address this, we propose a tableau calculus with

individual reuse

: to satisfy an existential assertion, our calculus nondeterministically tries to reuse individuals from the model generated thus far. We present two

expansion strategies

: one is applicable to the DL

$\mathcal{ELOH}$

and gives us a worst-case optimal algorithm, and the other is applicable to the DL

$\mathcal{SHOIQ}$

. Using this technique, our reasoner can process several KBs that no other reasoner can.

Boris Motik, Ian Horrocks
The Logical Difference Problem for Description Logic Terminologies

We consider the problem of computing the logical difference between distinct versions of description logic terminologies. For the lightweight description logic

$\mathcal{ EL}$

, we present a tractable algorithm which, given two terminologies and a signature, outputs a set of concepts, which can be regarded as the logical difference between the two terminologies. As a consequence, the algorithm can also decide whether they imply the same concept implications in the signature. A prototype implementation

CEX

of this algorithm is presented and experimental results based on distinct versions of

$\textsc{Snomed ct}$

, the Systematized Nomenclature of Medicine, Clinical Terms, are discussed. Finally, results regarding the relation to uniform interpolants and possible extensions to more expressive description logics are presented.

Boris Konev, Dirk Walther, Frank Wolter

Session 10: System Descriptions 2

Session 11: Invited Talk

Canonicity!

We describe an abstract proof-theoretic framework based on normal-form proofs, defined using well-founded orderings on proof objects. This leads to robust notions of canonical presentation and redundancy. Fairness of deductive mechanisms – in this general framework – leads to completeness or saturation. The method has so far been applied to the equational, Horn-clause, and deduction-modulo cases.

Nachum Dershowitz

Session 12: Equational Theories

Unification and Matching Modulo Leaf-Permutative Equational Presentations

Unification modulo variable-permuting equational presentations is known to be undecidable. We address here the problem of the existence of a unification algorithm for the class of

linear

variable-permuting presentations, also known as

leaf-permutative

presentations. We show that there is none, by exhibiting a leaf-permutative presentation whose unification problem is undecidable. We also exhibit one such presentation whose word and pattern matching problems are PSPACE-complete. The proof proceeds in three stages, by transforming length-preserving string-rewriting systems into

atomic

, then into

bit-swapping

string-rewriting systems, and finally into leaf-permutative presentations.

Thierry Boy de la Tour, Mnacho Echenim, Paliath Narendran
Modularity of Confluence
Constructed

We present a novel proof of Toyama’s famous modularity of confluence result for term rewriting systems. Apart from being short and intuitive, the proof is modular itself in that it factors through the decreasing diagrams technique for abstract rewriting systems, is constructive in that it gives a construction for the converging rewrite sequences given a pair of diverging rewrite sequences, and general in that it extends to opaque constructor-sharing term rewriting systems. We show that for term rewrite systems with extra variables, confluence is not preserved under

de

composition, and discuss whether for these systems confluence

is

preserved under composition.

Vincent van Oostrom
Automated Complexity Analysis Based on the Dependency Pair Method

In this paper, we present a variant of the dependency pair method for analysing runtime complexities of term rewrite systems automatically. This method is easy to implement, but significantly extends the analytic power of existing direct methods. Our findings extend the class of TRSs whose linear or quadratic runtime complexity can be detected automatically. We provide ample numerical data for assessing the viability of the method.

Nao Hirokawa, Georg Moser
Canonical Inference for Implicational Systems

Completion

is a general paradigm for applying inferences to generate a canonical presentation of a logical theory, or to semi-decide the validity of theorems, or to answer queries. We investigate what

canonicity

means for

implicational systems

that are axiomatizations of

Moore families

– or, equivalently, of propositional

Horn theories

. We build a correspondence between implicational systems and associative-commutative rewrite systems, give deduction mechanisms for both, and show how their respective inferences correspond. Thus, we exhibit completion procedures designed to generate canonical systems that are “optimal” for forward chaining, to compute minimal models, and to generate canonical systems that are

rewrite-optimal

. Rewrite-optimality is a new notion of “optimality” for implicational systems, one that takes contraction by simplification into account.

Maria Paola Bonacina, Nachum Dershowitz

Session 13: Invited Talk

Challenges in the Automated Verification of Security Protocols

The application area of security protocols raises several problems that are relevant to automated deduction. We describe in this note some of these challenges.

Hubert Comon-Lundh
Aligator: A Mathematica Package for Invariant Generation (System Description)

We describe the new software package

Aligator

for automatically inferring polynomial loop invariants. The package combines algorithms from symbolic summation and polynomial algebra with computational logic, and is applicable to the rich class of P-solvable loops.

Aligator

contains routines for checking the P-solvability of loops, transforming them into a system of recurrence equations, solving recurrences and deriving closed forms of loop variables, computing the ideal of polynomial invariants by variable elimination, invariant filtering and completeness check of the resulting set of invariants.

Laura Kovács
leanCoP 2.0 and ileanCoP 1.2: High Performance Lean Theorem Proving in Classical and Intuitionistic Logic (System Descriptions)

leanCoP

is a very compact theorem prover for classical first-order logic, based on the connection (tableau) calculus and implemented in Prolog.

leanCoP 2.0

enhances

leanCoP

1.0

by adding regularity, lemmata, and a technique for restricting backtracking. It also provides a definitional translation into clausal form and integrates “Prolog technology” into a lean theorem prover.

ileanCoP

is a compact theorem prover for intuitionistic first-order logic and based on the clausal connection calculus for intuitionistic logic.

leanCoP 2.0

extends the classical prover

leanCoP 2.0

by adding prefixes and a prefix unification algorithm. We present details of both implementations and evaluate their performance.

Jens Otten
iProver – An Instantiation-Based Theorem Prover for First-Order Logic (System Description)

iProver is an instantiation-based theorem prover which is based on Inst-Gen calculus, complete for first-order logic. One of the distinctive features of iProver is a modular combination of instantiation and propositional reasoning. In particular, any state-of-the art SAT solver can be integrated into our framework. iProver incorporates state-of-the-art implementation techniques such as indexing, redundancy elimination, semantic selection and saturation algorithms. Redundancy elimination implemented in iProver include: dismatching constraints, blocking non-proper instantiations and propositional-based simplifications. In addition to instantiation, iProver implements ordered resolution calculus and a combination of instantiation and ordered resolution. In this paper we discuss the design of iProver and related implementation issues.

Konstantin Korovin
An Experimental Evaluation of Global Caching for $\mathcal {ALC}$ (System Description)

Goré and Nguyen have recently given the first optimal and sound method for global caching for the description (modal) logic

$\mathcal {ALC}$

, and various extensions. We report on an experimental evaluation for

$\mathcal {ALC}$

plus its reflexive and reflexive-transitive extensions which compares global caching, mixed caching, unsat caching and no caching, all in a single common framework implementing a depth-first search strategy. We also evaluated a version of global caching using an unrestricted search strategy which necessarily sits outside the common framework. We conclude that global caching is an improvement over the other methods in most but not all cases.

Rajeev Goré, Linda Postniece
Multi-completion with Termination Tools (System Description)

In this paper we describe a new tool for performing Knuth-Bendix completion with automatic termination tools. It is based on two ingredients: (1) the inference system for completion with multiple reduction orderings introduced by Kurihara and Kondo (1999) and (2) the inference system for completion with external termination provers proposed by Wehrman, Stump and Westbrook (2006) and implemented in the

Slothrop

system. Our tool can be used with any termination tool that satisfies certain minimal requirements. Preliminary experimental results show the potential of our tool.

Haruhiko Sato, Sarah Winkler, Masahito Kurihara, Aart Middeldorp
MTT: The Maude Termination Tool (System Description)

Despite the remarkable development of the theory of termination of rewriting, its application to high-level programming languages is far from being optimal. This is due to the need for features such as conditional equations and rules, types and subtypes, (possibly programmable) strategies for controlling the execution, matching modulo axioms, and so on, that are used in many programs and tend to place such programs outside the scope of current termination tools.The operational meaning of such features is often formalized in a proof-theoretic manner by means of an inference system (see, e.g., [2, 3, 17]) rather than just by a rewriting relation. In particular, Generalized Rewrite Theories (GRT) [3] are a recent generalization of rewrite theories at the heart of the most recent formulation of

Maude

[4].

Francisco Durán, Salvador Lucas, José Meseguer
Celf – A Logical Framework for Deductive and Concurrent Systems (System Description)

CLF (Concurrent LF) [CPWW02a] is a logical framework for specifying and implementing deductive and concurrent systems from areas, such as programming language theory, security protocol analysis, process algebras, and logics. Celf is an implementation of the CLF type theory that extends the LF type theory by linear types to support representation of state and a monad to support representation of concurrency. It relies on the judgments-as-types methodology for specification and the interpretation of CLF signatures as concurrent logic programs [LPPW05] for experimentation. Celf is written in Standard ML and compiles with MLton, MLKit, and SML/NJ. The source code and a collection of examples are available from

http://www.twelf.org/~celf

.

Anders Schack-Nielsen, Carsten Schürmann

Session 14: Theorem Proving 1

Session 15: CASC

CASC-J4 The 4th IJCAR ATP System Competition

The CADE ATP System Competition (CASC) is an annual evaluation of fully automatic, first-order Automated Theorem Proving (ATP) systems - the world championship for such systems. In addition to the primary aim of evaluating the relative capabilities of ATP systems, CASC aims to stimulate ATP research in general, to stimulate ATP research towards autonomous systems, to motivate implementation and fixing of systems, to provide an inspiring environment for personal interaction between ATP researchers, and to expose ATP systems within and beyond the ATP community. Fulfillment of these objectives provides stimulus and insight for the development of more powerful ATP systems, leading to increased and more effective usage. CASC-J4 was held on 13th August 2008, as part of the 4th International Joint Conference on Automated Reasoning, in Sydney, Australia. It was the thirteenth competition in the CASC series (lucky for some). The CASC-J4 web site provides access to details of the competition design, competition resources, and the systems that were entered:

http://www.tptp.org/CASC/J4/

Geoff Sutcliffe
Deciding Effectively Propositional Logic Using DPLL and Substitution Sets

We introduce a DPLL calculus that is a decision procedure for the Bernays-Schönfinkel class, also known as EPR. Our calculus allows combining techniques for efficient propositional search with data-structures, such as Binary Decision Diagrams, that can efficiently and succinctly encode finite sets of substitutions and operations on these. In the calculus, clauses comprise of a sequence of literals together with a finite set of substitutions; truth assignments are also represented using substitution sets. The calculus works directly at the level of sets, and admits performing simultaneous constraint propagation and decisions, resulting in potentially exponential speedups over existing approaches.

Leonardo de Moura, Nikolaj Bjørner
Proof Systems for Effectively Propositional Logic

We consider proof systems for effectively propositional logic. First, we show that propositional resolution for effectively propositional logic may have exponentially longer refutations than resolution for this logic. This shows that methods based on ground instantiation may be weaker than non-ground methods. Second, we introduce a generalisation rule for effectively propositional logic and show that resolution for this logic may have exponentially longer proofs than resolution with generalisation. We also discuss some related questions, such as sort assignments for generalisation.

Juan Antonio Navarro, Andrei Voronkov
MaLARea SG1 - Machine Learner for Automated Reasoning with Semantic Guidance

This paper describes a system combining model-based and learning-based methods for automated reasoning in large theories, i.e. on a large number of problems that use many axioms, lemmas, theorems, definitions, and symbols, in a consistent fashion. The implementation is based on the existing

MaLARea

system, which cycles between theorem proving attempts and learning axiom relevance from successes. This system is extended by taking into account semantic relevance of axioms, in a way similar to that of the

SRASS

system. The resulting combined system significantly outperforms both

MaLARea

and

SRASS

on the MPTP Challenge large theory benchmark, in terms of both the number of problems solved and the time taken to find solutions. The design, implementation, and experimental testing of the system are described here.

Josef Urban, Geoff Sutcliffe, Petr Pudlák, Jiří Vyskočil

Session 16: Theorem Proving 2

Session 17: Logical Frameworks

Focusing in Linear Meta-logic

It is well known how to use an intuitionistic meta-logic to specify natural deduction systems. It is also possible to use linear logic as a meta-logic for the specification of a variety of sequent calculus proof systems. Here, we show that if we adopt different

focusing

annotations for such linear logic specifications, a range of other proof systems can also be specified. In particular, we show that natural deduction (normal and non-normal), sequent proofs (with and without cut), tableaux, and proof systems using general elimination and general introduction rules can all be derived from essentially the same linear logic specification by altering focusing annotations. By using elementary linear logic equivalences and the completeness of focused proofs, we are able to derive new and modular proofs of the soundness and completeness of these various proofs systems for intuitionistic and classical logics.

Vivek Nigam, Dale Miller

Session 18: Tree Automata

Certifying a Tree Automata Completion Checker

Tree automata completion is a technique for the verification of infinite state systems. It has already been used for the verification of cryptographic protocols and the prototyping of Java static analyzers. However, as for many other verification techniques, the correctness of the associated tool becomes more and more difficult to guarantee. It is due to the size of the implementation that constantly grows and due to optimizations which are necessary to scale up the efficiency of the tool to verify real-size systems. In this paper, we define and develop a checker for tree automata produced by completion. The checker is defined using

coq

and its implementation is automatically extracted from its formal specification. Using extraction gives a checker that can be run independently of the

coq

environment. A specific algorithm for tree automata inclusion checking has been defined so as to avoid the exponential blow up. The obtained checker is certified in

coq

, independent of the implementation of completion, usable with any approximation performed during completion, small and fast. Some benchmarks are given to show how efficient the tool is.

Benoît Boyer, Thomas Genet, Thomas Jensen
Automated Induction with Constrained Tree Automata

We propose a procedure for automated implicit inductive theorem proving for equational specifications made of rewrite rules with conditions and constraints. The constraints are interpreted over constructor terms (representing data values), and may express syntactic equality, disequality, ordering and also membership in a fixed tree language. Constrained equational axioms between constructor terms are supported and can be used in order to specify complex data structures like sets, sorted lists, trees, powerlists...

Our procedure is based on tree grammars with constraints, a formalism which can describe exactly the initial model of the given specification (when it is sufficiently complete and terminating). They are used in the inductive proofs first as an induction scheme for the generation of subgoals at induction steps, second for checking validity and redundancy criteria by reduction to an emptiness problem, and third for defining and solving membership constraints.

We show that the procedure is sound and refutationally complete. It generalizes former test set induction techniques and yields natural proofs for several non-trivial examples presented in the paper, these examples are difficult (if not impossible) to specify and carry on automatically with other induction procedures.

Adel Bouhoula, Florent Jacquemard
Labelled Splitting

We define a superposition calculus with explicit splitting and an explicit, new backtracking rule on the basis of labelled clauses. For the first time we show a superposition calculus with explicit backtracking rule sound and complete. The new backtracking rule advances backtracking with branch condensing known from

Spass

. An experimental evaluation of an implementation of the new rule shows that it improves considerably the previous

Spass

splitting implementation. Finally, we discuss the relationship between labelled first-order splitting and DPLL style splitting with intelligent backtracking and clause learning.

Arnaud Fietzke, Christoph Weidenbach
Engineering DPLL(T) + Saturation

Satisfiability Modulo Theories (SMT) solvers have proven highly scalable, efficient and suitable for integrated theory reasoning. The most efficient SMT solvers rely on refutationally incomplete methods for incorporating quantifier reasoning. We describe a calculus and a system that tightly integrates Superposition and DPLL(T). In the calculus, all non-unit ground clauses are delegated to the DPLL(T) core. The integration is tight, dependencies on case splits are tracked as hypotheses in the saturation engine. The hypotheses are discharged during backtracking. The combination is refutationally complete for first-order logic, and its implementation is competitive in performance with E-matching based SMT solvers on problems they are good at.

Leonardo de Moura, Nikolaj Bjørner
THF0 – The Core of the TPTP Language for Higher-Order Logic

One of the keys to the success of the Thousands of Problems for Theorem Provers (TPTP) problem library and related infrastructure is the consistent use of the TPTP language. This paper introduces the core of the TPTP language for higher-order logic – THF0, based on Church’s simple type theory. THF0 is a syntactically conservative extension of the untyped first-order TPTP language.

Christoph Benzmüller, Florian Rabe, Geoff Sutcliffe
Backmatter
Metadata
Title
Automated Reasoning
Editors
Alessandro Armando
Peter Baumgartner
Gilles Dowek
Copyright Year
2008
Publisher
Springer Berlin Heidelberg
Electronic ISBN
978-3-540-71070-7
Print ISBN
978-3-540-71069-1
DOI
https://doi.org/10.1007/978-3-540-71070-7

Premium Partner