The MathSAT 4 SMT Solver: Tool Paper
We present MathSAT 4, a state-of-the-art SMT solver. MathSAT 4 handles several useful
theories:(combinations of) equality and uninterpreted functions, difference logic, linear …
theories:(combinations of) equality and uninterpreted functions, difference logic, linear …
Natural proofs for structure, data, and separation
We propose natural proofs for reasoning with programs that manipulate data-structures
against specifications that describe the structure of the heap, the data stored within it, and …
against specifications that describe the structure of the heap, the data stored within it, and …
Matching μ-logic
X Chen, G Roşu - 2019 34th Annual ACM/IEEE Symposium on …, 2019 - ieeexplore.ieee.org
Matching logic is a logic for specifying and reasoning about structure by means of patterns
and pattern matching. This paper makes two contributions. First, it proposes a sound and …
and pattern matching. This paper makes two contributions. First, it proposes a sound and …
Decidable logics combining heap structures and data
We define a new logic, STRAND, that allows reasoning with heap-manipulating programs
using deductive verification and SMT solvers. STRAND logic (" STRucture ANd Data" logic) …
using deductive verification and SMT solvers. STRAND logic (" STRucture ANd Data" logic) …
JBSE: A symbolic executor for java programs with complex heap inputs
We present the Java Bytecode Symbolic Executor (JBSE), a symbolic executor for Java
programs that operates on complex heap inputs. JBSE implements both the novel Heap …
programs that operates on complex heap inputs. JBSE implements both the novel Heap …
Recursive proofs for inductive tree data-structures
We develop logical mechanisms and procedures to facilitate the verification of full functional
properties of inductive tree data-structures using recursion that are sound, incomplete, but …
properties of inductive tree data-structures using recursion that are sound, incomplete, but …
Automatic induction proofs of data-structures in imperative programs
We consider the problem of automated reasoning about dynamically manipulated data
structures. Essential properties are encoded as predicates whose definitions are formalized …
structures. Essential properties are encoded as predicates whose definitions are formalized …
Symbolic execution of programs with heap inputs
Symbolic analysis is a core component of many automatic test generation and program
verication approaches. To verify complex software systems, test and analysis techniques …
verication approaches. To verify complex software systems, test and analysis techniques …
Bidirectional symbolic analysis for effective branch testing
Structural coverage metrics, and in particular branch coverage, are popular approaches to
measure the thoroughness of test suites. Unfortunately, the presence of elements that are …
measure the thoroughness of test suites. Unfortunately, the presence of elements that are …
Towards a unified proof framework for automated fixpoint reasoning using matching logic
X Chen, MT Trinh, N Rodrigues, L Peña… - Proceedings of the ACM …, 2020 - dl.acm.org
Automation of fixpoint reasoning has been extensively studied for various mathematical
structures, logical formalisms, and computational domains, resulting in specialized fixpoint …
structures, logical formalisms, and computational domains, resulting in specialized fixpoint …