Stéphane Graham-Lengrand
École Polytechnique
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Stéphane Graham-Lengrand.
theorem proving with analytic tableaux and related methods | 2013
Stéphane Graham-Lengrand
Psyche is a modular proof-search engine designed for either interactive or automated theorem proving, and aiming at two things: a high level of confidence about the output of the theorem proving process and the ability to apply and combine a wide range of techniques. It addresses the first aim by adopting and extending the LCF architecture to guarantee, using private types, not only the correctness but also the completeness of proof search. It addresses the second by offering a much more appropriate API than just the primitives corresponding to the inference rules of the logic in natural deduction: it uses instead a focused sequent calculus for polarised classical logic. Finally, Psyche features the ability to call decision procedures such as those used in Sat-Modulo-Theories solvers. We therefore illustrate Psyche by using it for SMT-solving.Psyche is a modular proof-search engine designed for either interactive or automated theorem proving, and aiming at two things: a high level of confidence about the output of the theorem proving process and the ability to apply and combine a wide range of techniques. It addresses the first aim by adopting and extending the LCF architecture to guarantee, using private types, not only the correctness but also the completeness of proof search. It addresses the second by offering a much more appropriate API than just the primitives corresponding to the inference rules of the logic in natural deduction: it uses instead a focused sequent calculus for polarised classical logic. Finally, Psyche features the ability to call decision procedures such as those used in Sat-Modulo-Theories solvers. We therefore illustrate Psyche by using it for SMT-solving.
Proceedings of the Eighth ACM SIGPLAN international workshop on Logical frameworks & meta-languages: theory & practice | 2013
Mahfuza Farooque; Stéphane Graham-Lengrand; Assia Mahboubi
We describe how the Davis-Putnam-Logemann-Loveland procedure DPLL is bisimilar to the goal-directed proof-search mechanism described by a standard but carefully chosen sequent calculus. We thus relate a procedure described as a transition system on states to the gradual completion of incomplete proof-trees. For this we use a focused sequent calculus for polarised classical logic, for which we allow analytic cuts. The focusing mechanisms, together with an appropriate management of polarities, then allows the bisimulation to hold: The class of sequent calculus proofs that are the images of the DPLL runs finishing on UNSAT, is identified with a simple criterion involving polarities. We actually provide those results for a version DPLL(T) of the procedure that is parameterised by a background theory T for which we can decide whether conjunctions of literals are consistent. This procedure is used for Satisfiability Modulo Theories (SMT) generalising propositional SAT. For this, we extend the standard focused sequent calculus for propositional logic in the same way DPLL(T) extends DPLL: with the ability to call the decision procedure for T. DPLL(T) is implemented as a plugin for Psyche, a proof-search engine for this sequent calculus, to provide a sequent-calculus based SMT-solver.
conference on automated deduction | 2017
Maria Paola Bonacina; Stéphane Graham-Lengrand; Natarajan Shankar
The CDCL procedure for SAT is the archetype of conflict-driven procedures for satisfiability of quantifier-free problems in a single theory. In this paper we lift CDCL to CDSAT (Conflict-Driven Satisfiability), a system for conflict-driven reasoning in combinations of disjoint theories. CDSAT combines theory modules that interact through a global trail representing a candidate model by Boolean and first-order assignments. CDSAT generalizes to generic theory combinations the model-constructing satisfiability calculus (MCSAT) introduced by de Moura and Jovanovic. Furthermore, CDSAT generalizes the equality sharing (Nelson-Oppen) approach to theory combination, by allowing theories to share equality information both explicitly through equalities and disequalities, and implicitly through assignments. We identify sufficient conditions for the soundness, completeness, and termination of CDSAT.
certified programs and proofs | 2018
Maria Paola Bonacina; Stéphane Graham-Lengrand; Natarajan Shankar
Search-based satisfiability procedures try to construct a model of the input formula by simultaneously proposing candidate models and deriving new formulae implied by the input. When the formulae are satisfiable, these procedures generate a model as a witness. Dually, it is desirable to have a proof when the formulae are unsatisfiable. Conflict-driven procedures perform nontrivial inferences only when resolving conflicts between the formulae and assignments representing the candidate model. CDSAT (Conflict-Driven SATisfiability) is a method for conflict-driven reasoning in combinations of theories. It combines solvers for individual theories as theory modules within a solver for the union of the theories. In this paper we endow CDSAT with lemma learning and proof generation. For the latter, we present two techniques. The first one produces proof objects in memory: it assumes that all theory modules produce proof objects and it accommodates multiple proof formats. The second technique adapts the LCF approach to proofs from interactive theorem proving to conflict-driven SMT-solving and theory combination, by defining a small kernel of reasoning primitives that guarantees that CDSAT proofs are correct by construction.
frontiers of combining systems | 2015
Damien Rouhling; Mahfuza Farooque; Stéphane Graham-Lengrand; Assia Mahboubi; Jean-Marc Notin
Goal-directed proof search in first-order logic uses meta- variables to delay the choice of witnesses; substitutions for such variables are produced when closing proof-tree branches, using first-order unification or a theory-specific background reasoner. This paper investigates a generalisation of such mechanisms whereby theory-specific constraints are produced instead of substitutions. In order to design modular proof-search procedures over such mechanisms, we provide a sequent calculus with meta-variables, which manipulates such constraints abstractly. Proving soundness and completeness of the calculus leads to an axiomatisation that identifies the conditions under which abstract constraints can be generated and propagated in the same way unifiers usually are. We then extract from our abstract framework a component interface and a specification for concrete implementations of background reasoners.
Proceedings of the First International Workshop on Focusing | 2015
Stéphane Graham-Lengrand
We present a sequent calculus for abstract focussing, equipped with proof-terms: in the tradition of Zeilbergers work, logical connectives and their introduction rules are left as a parameter of the system, which collapses the synchronous and asynchronous phases of focussing as macro rules. We go further by leaving as a parameter the operation that extends a context of hypotheses with new ones, which allows us to capture both classical and intuitionistic focussed sequent calculi. We then define the realisability semantics of (the proofs of) the system, on the en basis of Munch-Maccagnonis orthogonality models for the classical focussed sequent calculus, but now operating at the higher level of abstraction mentioned above. We prove, at that level, the Adequacy Lemma, namely that if a term is of type A, then in the model its denotation is in the (set-theoretic) interpretation of A. This exhibits the fact that the universal quantification involved when taking the orthogonal of a set, reflects in the semantics Zeilbergers universal quantification in the macro rule for the asynchronous phase. The system and its semantics are all formalised in Coq.
arXiv: Programming Languages | 2013
Stéphane Graham-Lengrand; Luca Paolini
This volume contains the proceedings of the Sixth Workshop on Intersection Types and Related Systems (ITRS 2012). The workshop was held in Dubrovnik (Croatia) on June 29th, 2012, affiliated to Twenty-Seventh Annual ACM/IEEE Symposium on Logic in Computer Science (LICS 2012). The ITRS workshop aims to bring together researchers working on both the theory and practical applications of systems based on intersection types and related approaches (e.g., union types, refinement types, behavioural types, recursive types, and so on).
Archive | 2013
Stéphane Graham-Lengrand; Luca Paolini
This volume contains the proceedings of the Sixth Workshop on Intersection Types and Related Systems (ITRS 2012). The workshop was held in Dubrovnik (Croatia) on June 29th, 2012, affiliated to Twenty-Seventh Annual ACM/IEEE Symposium on Logic in Computer Science (LICS 2012). The ITRS workshop aims to bring together researchers working on both the theory and practical applications of systems based on intersection types and related approaches (e.g., union types, refinement types, behavioural types, recursive types, and so on).
arXiv: Logic in Computer Science | 2014
Stéphane Graham-Lengrand
Archive | 2016
Maria Paola Bonacina; Stéphane Graham-Lengrand; Natarajan Shankar
Collaboration
Dive into the Stéphane Graham-Lengrand's collaboration.
French Institute for Research in Computer Science and Automation
View shared research outputs