Skip to main content

Showing 1–7 of 7 results for author: Braibant, T

Searching in archive cs. Search in all archives.
.
  1. Implementing and reasoning about hash-consed data structures in Coq

    Authors: Thomas Braibant, Jacques-Henri Jourdan, David Monniaux

    Abstract: We report on four different approaches to implementing hash-consing in Coq programs. The use cases include execution inside Coq, or execution of the extracted OCaml code. We explore the different trade-offs between faithful use of pristine extracted code, and code that is fine-tuned to make use of OCaml programming constructs not available in Coq. We discuss the possible consequences in terms of p… ▽ More

    Submitted 25 September, 2015; v1 submitted 7 November, 2013; originally announced November 2013.

    Journal ref: Journal of Automated Reasoning, Springer Verlag (Germany), 2014, 53 (3), pp.271-304

  2. arXiv:1305.6543  [pdf, other

    cs.PL cs.LO

    MirrorShard: Proof by Computational Reflection with Verified Hints

    Authors: Gregory Malecha, Adam Chlipala, Thomas Braibant, Patrick Hulin, Edward Z. Yang

    Abstract: We describe a method for building composable and extensible verification procedures within the Coq proof assistant. Unlike traditional methods that rely on run-time generation and checking of proofs, we use verified-correct procedures with Coq soundness proofs. Though they are internalized in Coq's logic, our provers support sound extension by users with hints over new domains, enabling automated… ▽ More

    Submitted 28 May, 2013; originally announced May 2013.

    MSC Class: 68N30 ACM Class: D.2.4; D.3.1; F.3.1; F.4.1

  3. arXiv:1304.6038  [pdf, ps, other

    cs.PL cs.LO

    Implementing hash-consed structures in Coq

    Authors: Thomas Braibant, Jacques-Henri Jourdan, David Monniaux

    Abstract: We report on three different approaches to use hash-consing in programs certified with the Coq system, using binary decision diagrams (BDD) as running example. The use cases include execution inside Coq, or execution of the extracted OCaml code. There are different trade-offs between faithful use of pristine extracted code, and code that is fine-tuned to make use of OCaml programming constructs no… ▽ More

    Submitted 22 April, 2013; originally announced April 2013.

  4. Formal Verification of Hardware Synthesis

    Authors: Thomas Braibant, Adam Chlipala

    Abstract: We report on the implementation of a certified compiler for a high-level hardware description language (HDL) called Fe-Si (FEatherweight SynthesIs). Fe-Si is a simplified version of Bluespec, an HDL based on a notion of guarded atomic actions. Fe-Si is defined as a dependently typed deep embedding in Coq. The target language of the compiler corresponds to a synthesisable subset of Verilog or VHDL.… ▽ More

    Submitted 21 January, 2013; originally announced January 2013.

    Journal ref: Computer Aided Verification, Saint Petersburg : Russie, Fédération De (2013)

  5. arXiv:1108.4253  [pdf, other

    cs.LO

    Coquet: a Coq library for verifying hardware

    Authors: Thomas Braibant

    Abstract: We propose a new library to model and verify hardware circuits in the Coq proof assistant. This library allows one to easily build circuits by following the usual pen-and-paper diagrams. We define a deep-embedding: we use a (dependently typed) data-type that models the architecture of circuits, and a meaning function. We propose tactics that ease the reasoning about the behavior of the circuits, a… ▽ More

    Submitted 22 August, 2011; originally announced August 2011.

  6. Tactics for Reasoning modulo AC in Coq

    Authors: Thomas Braibant, Damien Pous

    Abstract: We present a set of tools for rewriting modulo associativity and commutativity (AC) in Coq, solving a long-standing practical problem. We use two building blocks: first, an extensible reflexive decision procedure for equality modulo AC; second, an OCaml plug-in for pattern matching modulo AC. We handle associative only operations, neutral elements, uninterpreted function symbols, and user-defined… ▽ More

    Submitted 22 September, 2011; v1 submitted 22 June, 2011; originally announced June 2011.

    Comments: 16p

    Journal ref: Certified Proofs and Programs, Taïwan, Province De Chine (2011)

  7. Deciding Kleene Algebras in Coq

    Authors: Thomas Braibant, Damien Pous

    Abstract: We present a reflexive tactic for deciding the equational theory of Kleene algebras in the Coq proof assistant. This tactic relies on a careful implementation of efficient finite automata algorithms, so that it solves casual equations instantaneously and properly scales to larger expressions. The decision procedure is proved correct and complete: correctness is established w.r.t. any model by for… ▽ More

    Submitted 1 March, 2012; v1 submitted 20 May, 2011; originally announced May 2011.

    ACM Class: F 1.1, F 3.1, F.4.1, F.4.3, D 2.4

    Journal ref: Logical Methods in Computer Science, Volume 8, Issue 1 (March 2, 2012) lmcs:1043