Skip to main content

and
  1. Chapter and Conference Paper

    A Formal Model to Prove Instantiation Termination for E-matching-Based Axiomatisations

    SMT-based program analysis and verification often involve reasoning about program features that have been specified using quantifiers; incorporating quantifiers into SMT-based reasoning is, however, known to b...

    Rui Ge, Ronald Garcia, Alexander J. Summers in Automated Reasoning (2024)

  2. No Access

    Chapter and Conference Paper

    The Prusti Project: Formal Verification for Rust

    Rust is a modern systems programming language designed to offer both performance and static safety. A key distinguishing feature is a strong type system, which enforces by default that memory is either shared ...

    Vytautas Astrauskas, Aurel Bílý, Jonáš Fiala, Zachary Grannan in NASA Formal Methods (2022)

  3. Chapter and Conference Paper

    Sound Automation of Magic Wands

    The magic wand \(\mathbin {-\!\!*}\) - ...

    Thibault Dardinier, Gaurav Parthasarathy, Noé Weeks in Computer Aided Verification (2022)

  4. Chapter and Conference Paper

    Formally Validating a Practical Verification Condition Generator

    A program verifier produces reliable results only if both the logic used to justify the program’s correctness is sound, and the implementation of the program verifier is itself correct. Whereas it is common to fo...

    Gaurav Parthasarathy, Peter Müller, Alexander J. Summers in Computer Aided Verification (2021)

  5. No Access

    Article

    Automating deductive verification for weak-memory programs (extended version)

    Writing correct programs for weak-memory models such as the C11 memory model is challenging because of the weak consistency guarantees these models provide. The first program logics for the verification of suc...

    Alexander J. Summers, Peter Müller in International Journal on Software Tools fo… (2020)

  6. Chapter and Conference Paper

    The Axiom Profiler: Understanding and Debugging SMT Quantifier Instantiations

    SMT solvers typically reason about universal quantifiers via E-matching: syntactic matching patterns for each quantifier prescribe shapes of ground terms whose presence in the SMT run will trigger quantifier i...

    Nils Becker, Peter Müller in Tools and Algorithms for the Construction … (2019)

  7. Chapter and Conference Paper

    Automating Deductive Verification for Weak-Memory Programs

    Writing correct programs for weak memory models such as the C11 memory model is challenging because of the weak consistency guarantees these models provide. The first program logics for the verification of suc...

    Alexander J. Summers, Peter Müller in Tools and Algorithms for the Construction … (2018)

  8. Chapter and Conference Paper

    Automatic Verification of Iterated Separating Conjunctions Using Symbolic Execution

    In permission logics such as separation logic, the iterated separating conjunction is a quantifier denoting access permission to an unbounded set of heap locations. In contrast to recursive predicates, iterate...

    Peter Müller, Malte Schwerhoff, Alexander J. Summers in Computer Aided Verification (2016)

  9. No Access

    Chapter and Conference Paper

    Considerate Reasoning and the Composite Design Pattern

    We propose Considerate Reasoning, a novel specification and verification technique based on object invariants. This technique supports succinct specifications of implementations which follow the pattern of breaki...

    Alexander J. Summers, Sophia Drossopoulou in Verification, Model Checking, and Abstract… (2010)

  10. No Access

    Chapter and Conference Paper

    Universe Types for Topology and Encapsulation

    The Universe Type System is an ownership type system for object-oriented programming languages that hierarchically structures the object store; it is used to reason modularly about programs.

    Dave Cunningham, Werner Dietl in Formal Methods for Components and Objects (2008)

  11. Chapter and Conference Paper

    Approaches to Polymorphism in Classical Sequent Calculus

    \(\mathcal X\) is a relatively new calculus, invented to give a Curry-Howard correspondence with Classical Implica...

    Alexander J. Summers, Steffen van Bakel in Programming Languages and Systems (2006)