Skip to main content

Showing 1–5 of 5 results for author: Dardinier, T

.
  1. arXiv:2404.03614  [pdf, ps, other

    cs.PL

    Towards Trustworthy Automated Program Verifiers: Formally Validating Translations into an Intermediate Verification Language (extended version)

    Authors: Gaurav Parthasarathy, Thibault Dardinier, Benjamin Bonneau, Peter Müller, Alexander J. Summers

    Abstract: Automated program verifiers are typically implemented using an intermediate verification language (IVL), such as Boogie or Why3. A verifier front-end translates the input program and specification into an IVL program, while the back-end generates proof obligations for the IVL program and employs an SMT solver to discharge them. Soundness of such verifiers therefore requires that the front-end tran… ▽ More

    Submitted 9 May, 2024; v1 submitted 4 April, 2024; originally announced April 2024.

    Comments: Extended version of PLDI 2024 publication

  2. Hyper Hoare Logic: (Dis-)Proving Program Hyperproperties (extended version)

    Authors: Thibault Dardinier, Peter Müller

    Abstract: Hoare logics are proof systems that allow one to formally establish properties of computer programs. Traditional Hoare logics prove properties of individual program executions (such as functional correctness). Hoare logic has been generalized to prove also properties of multiple executions of a program (so-called hyperproperties, such as determinism or non-interference). These program logics prove… ▽ More

    Submitted 11 April, 2024; v1 submitted 24 January, 2023; originally announced January 2023.

    Comments: Extended version of the PLDI'24 paper

    Journal ref: Proc. ACM Program. Lang. 8, PLDI, Article 207 (June 2024)

  3. arXiv:2211.08459  [pdf, other

    cs.CR cs.PL

    CommCSL: Proving Information Flow Security for Concurrent Programs using Abstract Commutativity

    Authors: Marco Eilers, Thibault Dardinier, Peter Müller

    Abstract: Information flow security ensures that the secret data manipulated by a program does not influence its observable output. Proving information flow security is especially challenging for concurrent programs, where operations on secret data may influence the execution time of a thread and, thereby, the interleaving between different threads. Such internal timing channels may affect the observable ou… ▽ More

    Submitted 11 April, 2023; v1 submitted 15 November, 2022; originally announced November 2022.

  4. Verification-Preserving Inlining in Automatic Separation Logic Verifiers (extended version)

    Authors: Thibault Dardinier, Gaurav Parthasarathy, Peter Müller

    Abstract: Bounded verification has proved useful to detect bugs and to increase confidence in the correctness of a program. In contrast to unbounded verification, reasoning about calls via (bounded) inlining and about loops via (bounded) unrolling does not require method specifications and loop invariants and, therefore, reduces the annotation overhead to the bare minimum, namely specifications of the prope… ▽ More

    Submitted 13 March, 2023; v1 submitted 22 August, 2022; originally announced August 2022.

    Journal ref: Proc. ACM Program. Lang. 7, OOPSLA1, Article 102 (April 2023)

  5. arXiv:2205.11325  [pdf, other

    cs.LO

    Sound Automation of Magic Wands (extended version)

    Authors: Thibault Dardinier, Gaurav Parthasarathy, Noé Weeks, Alexanders J. Summers, Peter Müller

    Abstract: The magic wand $\mathbin{-\!\!*}$ (also called separating implication) is a separation logic connective commonly used to specify properties of partial data structures, for instance during iterative traversals. A footprint of a magic wand formula $A \mathbin{-\!\!*} B$ is a state that, combined with any state in which $A$ holds, yields a state in which $B$ holds. The key challenge of proving a magi… ▽ More

    Submitted 2 August, 2022; v1 submitted 23 May, 2022; originally announced May 2022.

    Comments: Extended version of CAV 2022 publication