10 research outputs found
Satisfiability Modulo Finite Fields
We study satisfiability modulo the theory of finite fields and
give a decision procedure for this theory. We implement our procedure
for prime fields inside the cvc5 SMT solver. Using this theory, we con-
struct SMT queries that encode translation validation for various zero
knowledge proof compilers applied to Boolean computations. We evalu-
ate our procedure on these benchmarks. Our experiments show that our
implementation is superior to previous approaches (which encode field
arithmetic using integers or bit-vectors)
A Survey of Symbolic Execution Techniques
Many security and software testing applications require checking whether
certain properties of a program hold for any possible usage scenario. For
instance, a tool for identifying software vulnerabilities may need to rule out
the existence of any backdoor to bypass a program's authentication. One
approach would be to test the program using different, possibly random inputs.
As the backdoor may only be hit for very specific program workloads, automated
exploration of the space of possible inputs is of the essence. Symbolic
execution provides an elegant solution to the problem, by systematically
exploring many possible execution paths at the same time without necessarily
requiring concrete inputs. Rather than taking on fully specified input values,
the technique abstractly represents them as symbols, resorting to constraint
solvers to construct actual instances that would cause property violations.
Symbolic execution has been incubated in dozens of tools developed over the
last four decades, leading to major practical breakthroughs in a number of
prominent software reliability applications. The goal of this survey is to
provide an overview of the main ideas, challenges, and solutions developed in
the area, distilling them for a broad audience.
The present survey has been accepted for publication at ACM Computing
Surveys. If you are considering citing this survey, we would appreciate if you
could use the following BibTeX entry: http://goo.gl/Hf5FvcComment: This is the authors pre-print copy. If you are considering citing
this survey, we would appreciate if you could use the following BibTeX entry:
http://goo.gl/Hf5Fv
Direct methods for deductive verification of temporal properties in continuous dynamical systems
This thesis is concerned with the problem of formal verification of correctness
specifications for continuous and hybrid dynamical systems. Our main focus will
be on developing and automating general proof principles for temporal properties
of systems described by non-linear ordinary differential equations (ODEs) under
evolution constraints. The proof methods we consider will work directly with the
differential equations and will not rely on the explicit knowledge of solutions,
which are in practice rarely available. Our ultimate goal is to increase the
scope of formal deductive verification tools for hybrid system designs. We
give a comprehensive survey and comparison of available methods for checking
set invariance in continuous systems, which provides a foundation for safety
verification using inductive invariants. Building on this, we present a technique
for constructing discrete abstractions of continuous systems in which spurious
transitions between discrete states are entirely eliminated, thereby extending
previous work. We develop a method for automatically generating inductive
invariants for continuous systems by efficiently extracting reachable sets from
their discrete abstractions. To reason about liveness properties in ODEs, we
introduce a new proof principle that extends and generalizes methods that have
been reported previously and is highly amenable to use as a rule of inference
in a deductive verification calculus for hybrid systems. We will conclude with a
summary of our contributions and directions for future work
Proceedings of the 22nd Conference on Formal Methods in Computer-Aided Design – FMCAD 2022
The Conference on Formal Methods in Computer-Aided Design (FMCAD) is an annual conference on the theory and applications of formal methods in hardware and system verification. FMCAD provides a leading forum to researchers in academia and industry for presenting and discussing groundbreaking methods, technologies, theoretical results, and tools for reasoning formally about computing systems. FMCAD covers formal aspects of computer-aided system design including verification, specification, synthesis, and testing
Proceedings of the 22nd Conference on Formal Methods in Computer-Aided Design – FMCAD 2022
The Conference on Formal Methods in Computer-Aided Design (FMCAD) is an annual conference on the theory and applications of formal methods in hardware and system verification. FMCAD provides a leading forum to researchers in academia and industry for presenting and discussing groundbreaking methods, technologies, theoretical results, and tools for reasoning formally about computing systems. FMCAD covers formal aspects of computer-aided system design including verification, specification, synthesis, and testing
LIPIcs, Volume 261, ICALP 2023, Complete Volume
LIPIcs, Volume 261, ICALP 2023, Complete Volum