10 research outputs found

    Conflict-driven reasoning in unions of theories

    Get PDF
    Many applications of automated reasoning require decision procedures for the satisfiability of a formula in a theory given by the union of a few theories. Reasoning in a union of theories can be approached in more than one way. The equality-sharing method, also known as Nelson-Oppen scheme, combines decision procedures for the component theories. Superposition-based theorem-proving strategies unite the presentations of the theories to reason about their union. CDSAT, which stands for Conflict-Driven SATisfiability, assumes that each theory is equipped with an inference system, called theory module, and coordinates the theory modules to reason in a conflict-driven manner in the union of the theories. A theory module is an abstraction of a decision procedure, made of inference rules that may correspond to axioms of the theory. Conflict-driven means that the system maintains a representation of a candidate partial model of the formula, and performs nontrivial inferences only to explain conflicts between the candidate model and the formula, so that the conflict can be solved by updating the partial model. CDSAT provides a framework where the theory modules cooperate to build the candidate model and to explain the conflicts. This talk presents CDSAT placing it in the big picture of multi-theory reasoning and conflict-driven reasoning

    SGGS theorem proving: an exposition

    Get PDF
    We present in expository style the main ideas in SGGS, which stands for Semantically-Guided Goal-Sensitive theorem proving. SGGS uses sequences of constrained clauses to represent models, instance generation to go from a candidate model to the next, and resolution as well as other inferences to repair the model. SGGS is refutationally complete for first-order logic, model based, semantically guided, proof confluent, and goal sensitive, which appears to be a rare combination of features. In this paper we describe the core of SGGS in a narrative style, emphasizing ideas and trying to keep technicalities to a minimum, in order to advertise it to builders and users of theorem provers

    Rewriting Modulo SMT

    Get PDF
    Combining symbolic techniques such as: (i) SMT solving, (ii) rewriting modulo theories, and (iii) model checking can enable the analysis of infinite-state systems outside the scope of each such technique. This paper proposes rewriting modulo SMT as a new technique combining the powers of (i)-(iii) and ideally suited to model and analyze infinite-state open systems; that is, systems that interact with a non-deterministic environment. Such systems exhibit both internal non-determinism due to the system, and external non-determinism due to the environment. They are not amenable to finite-state model checking analysis because they typically are infinite-state. By being reducible to standard rewriting using reflective techniques, rewriting modulo SMT can both naturally model and analyze open systems without requiring any changes to rewriting-based reachability analysis techniques for closed systems. This is illustrated by the analysis of a real-time system beyond the scope of timed automata methods

    Hierarchic Superposition Revisited

    Get PDF
    Many applications of automated deduction require reasoning in first-order logic modulo background theories, in particular some form of integer arithmetic. A major unsolved research challenge is to design theorem provers that are "reasonably complete" even in the presence of free function symbols ranging into a background theory sort. The hierarchic superposition calculus of Bachmair, Ganzinger, and Waldmann already supports such symbols, but, as we demonstrate, not optimally. This paper aims to rectify the situation by introducing a novel form of clause abstraction, a core component in the hierarchic superposition calculus for transforming clauses into a form needed for internal operation. We argue for the benefits of the resulting calculus and provide two new completeness results: one for the fragment where all background-sorted terms are ground and another one for a special case of linear (integer or rational) arithmetic as a background theory

    On deciding satisfiability by theorem proving with speculative inferences

    No full text
    Applications in software verification often require determining the satisfiability of first-order formulae with respect to background theories. During development, conjectures are usually false. Therefore, it is desirable to have a theorem prover that terminates on satisfiable instances. Satisfiability Modulo Theories (SMT) solvers have proven to be highly scalable, efficient and suitable for integrated theory reasoning. Inference systems with resolution and superposition are strong at reasoning with equalities, universally quantified variables, and Horn clauses. We describe a theorem-proving method that tightly integrates superposition-based inference system and SMT solver. The combination is refutationally complete if background theory symbols only occur in ground formulae, and non-ground clauses are variable-inactive. Termination is enforced by introducing additional axioms as hypotheses. The system detects any unsoundness introduced by these speculative inferences and recovers from it

    Labelled superposition

    Get PDF
    The work presented in this thesis consists of two parts: The first part presents a formalization of the splitting rule for case analysis in superposition and a proof of its correctness, as well as the integration into splitting of a novel approach to lemma learning, which allows the derivation of non-ground lemmas. The second part deals with the application of hierarchic superposition, and in particular superposition modulo linear arithmetic SUP(LA), to the verification of timed and probabilistic timed systems. It contains the following three main contributions: Firstly, a SUP(LA) decision procedure for reachability in timed automata, which is among the first decision procedures for free first-order logic modulo linear arithmetic; secondly, an automatic induction rule for SUP(LA) based on loop detection, whose application allows a generalization of the decidability result for timed automata to timed automata with unbounded integer variables; and thirdly, a formalism for modelling probabilistic timed systems with first-order background theories, as well as a novel approach for the analysis of such systems based on a reduction to model checking using SUP(LA) proof enumeration.Diese Arbeit besteht aus zwei Teilen: Im ersten Teil wird die Splitting-Regel zur Fallunterscheidung im Superpositionskalkül formalisiert und die Korrektheit der Formalisierung bewiesen. Ausserdem wird die Splitting-Regel mit einem neuartigen Verfahren zum Lernen von Lemmata erweitert, welches das Lernen von nicht-grund Lemmata erlaubt. Der zweite Teil befasst sich mit der Anwendung des hierarchischen Superpositionskalküls, insbesondere von Superposition modulo linearer Arithmetik SUP(LA), zur Verifikation von Echtzeit- und probabilistischen Echtzeitsystemen. Die drei wichtigsten Beiträge in diesem Teil sind: Erstens, ein SUP(LA)-basiertes Entscheidungsverfahren für Timed Automata, welches zu den ersten Entscheidungsverfahren für die hierarchische Kombination der freien Logik erster Stufe mit linear Arithmetik gehört; zweitens, eine Regel zur automatischen Induktion in SUP(LA), die auf der Erkennung von Schleifen basiert, und dank derer das Entscheidbarkeitsresultat für Timed Automata hin zu Timed Automata mit unbeschränkten Integer-Variablen verallgemeinert wird; und drittens, ein Formalismus zur Modellierung probabilistischer Echtzeitsysteme mit Hintergrundtheorien erster Stufe, sowie ein neuartiges Verfahren zur Analyse ebensolcher Systeme, welches auf einer Aufzählung von Erreichbarkeitsbeweisen in SUP(LA) sowie einer Zurückführung auf das Model Checking-Verfahren basiert
    corecore