Oded Padon
YOU?
Author Swipe
View article: A Primal-Dual Perspective on Program Verification Algorithms
A Primal-Dual Perspective on Program Verification Algorithms Open
Many algorithms in verification and automated reasoning leverage some form of duality between proofs and refutations or counterexamples. In most cases, duality is only used as an intuition that helps in understanding the algorithms and is …
View article: A Primal-Dual Perspective on Program Verification Algorithms (Extended Version)
A Primal-Dual Perspective on Program Verification Algorithms (Extended Version) Open
Many algorithms in verification and automated reasoning leverage some form of duality between proofs and refutations or counterexamples. In most cases, duality is only used as an intuition that helps in understanding the algorithms and is …
View article: Quanto: optimizing quantum circuits with automatic generation of circuit identities
Quanto: optimizing quantum circuits with automatic generation of circuit identities Open
Existing quantum compilers focus on mapping a logical quantum circuit to a quantum device and its native quantum gates. Only simple circuit identities are used to optimize the quantum circuit during the compilation process. This approach m…
View article: Efficient Implementation of an Abstract Domain of Quantified First-Order Formulas
Efficient Implementation of an Abstract Domain of Quantified First-Order Formulas Open
This paper lays a practical foundation for using abstract interpretation with an abstract domain that consists of sets of quantified first-order logic formulas. This abstract domain seems infeasible at first sight due to the complexity of …
View article: Quarl: A Learning-Based Quantum Circuit Optimizer
Quarl: A Learning-Based Quantum Circuit Optimizer Open
Optimizing quantum circuits is challenging due to the very large search space of functionally equivalent circuits and the necessity of applying transformations that temporarily decrease performance to achieve a final performance improvemen…
View article: An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification
An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification Open
First-order logic, and quantifiers in particular, are widely used in deductive verification of programs and systems. Quantifiers are essential for describing systems with unbounded domains, but prove difficult for automated solvers. Signif…
View article: mypyvy: A Research Platform for Verification of Transition Systems in First-Order Logic
mypyvy: A Research Platform for Verification of Transition Systems in First-Order Logic Open
is an open-source tool for specifying transition systems in first-order logic and reasoning about them. is particularly suitable for analyzing and verifying distributed algorithms. implements key functionalities needed for safety verificat…
View article: Efficient Implementation of an Abstract Domain of Quantified First-Order Formulas
Efficient Implementation of an Abstract Domain of Quantified First-Order Formulas Open
This paper lays a practical foundation for using abstract interpretation with an abstract domain that consists of sets of quantified first-order logic formulas. This abstract domain seems infeasible at first sight due to the complexity of …
View article: Clover: Closed-Loop Verifiable Code Generation
Clover: Closed-Loop Verifiable Code Generation Open
The use of large language models for code generation is a rapidly growing trend in software development. However, without effective methods for ensuring the correctness of generated code, this trend could lead to undesirable outcomes. In t…
View article: An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification
An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification Open
First-order logic, and quantifiers in particular, are widely used in deductive verification. Quantifiers are essential for describing systems with unbounded domains, but prove difficult for automated solvers. Significant effort has been de…
View article: Leaf: Modularity for Temporary Sharing in Separation Logic
Leaf: Modularity for Temporary Sharing in Separation Logic Open
In concurrent verification, separation logic provides a strong story for handling both resources that are owned exclusively and resources that are shared persistently (i.e., forever). However, the situation is more complicated for temporar…
View article: Leaf: Modularity for Temporary Sharing in Separation Logic (Extended Version)
Leaf: Modularity for Temporary Sharing in Separation Logic (Extended Version) Open
In concurrent verification, separation logic provides a strong story for handling both resources that are owned exclusively and resources that are shared persistently (i.e., forever). However, the situation is more complicated for temporar…
View article: Quarl: A Learning-Based Quantum Circuit Optimizer
Quarl: A Learning-Based Quantum Circuit Optimizer Open
Optimizing quantum circuits is challenging due to the very large search space of functionally equivalent circuits and the necessity of applying transformations that temporarily decrease performance to achieve a final performance improvemen…
View article: Counterexample-Guided Prophecy for Model Checking Modulo the Theory of Arrays
Counterexample-Guided Prophecy for Model Checking Modulo the Theory of Arrays Open
We develop a framework for model checking infinite-state systems by automatically augmenting them with auxiliary variables, enabling quantifier-free induction proofs for systems that would otherwise require quantified invariants. We combin…
View article: Quartz: superoptimization of Quantum circuits
Quartz: superoptimization of Quantum circuits Open
Existing quantum compilers optimize quantum circuits by applying circuit transformations designed by experts. This approach requires significant manual effort to design and implement circuit transformations for different quantum devices, w…
View article: Quartz: Superoptimization of Quantum Circuits (Extended Version)
Quartz: Superoptimization of Quantum Circuits (Extended Version) Open
Existing quantum compilers optimize quantum circuits by applying circuit transformations designed by experts. This approach requires significant manual effort to design and implement circuit transformations for different quantum devices, w…
View article: Induction duality: primal-dual search for invariants
Induction duality: primal-dual search for invariants Open
Many invariant inference techniques reason simultaneously about states and predicates, and it is well-known that these two kinds of reasoning are in some sense dual to each other. We present a new formal duality between states and predicat…
View article: Inferring Invariants with Quantifier Alternations: Taming the Search Space Explosion
Inferring Invariants with Quantifier Alternations: Taming the Search Space Explosion Open
We present a PDR/IC3 algorithm for finding inductive invariants with quantifier alternations. We tackle scalability issues that arise due to the large search space of quantified invariants by combining a breadth-first search strategy and a…
View article: Inferring Invariants with Quantifier Alternations: Taming the Search Space Explosion
Inferring Invariants with Quantifier Alternations: Taming the Search Space Explosion Open
We present a PDR/IC3 algorithm for finding inductive invariants with quantifier alternations. We tackle scalability issues that arise due to the large search space of quantified invariants by combining a breadth-first search strategy and a…
View article: Quanto: Optimizing Quantum Circuits with Automatic Generation of Circuit Identities
Quanto: Optimizing Quantum Circuits with Automatic Generation of Circuit Identities Open
Existing quantum compilers focus on mapping a logical quantum circuit to a quantum device and its native quantum gates. Only simple circuit identities are used to optimize the quantum circuit during the compilation process. This approach m…
View article: Artifact for POPL 2022 paper: Induction Duality: Primal-Dual Search for Invariants
Artifact for POPL 2022 paper: Induction Duality: Primal-Dual Search for Invariants Open
Artifact for POPL 2022 paper: Induction Duality: Primal-Dual Search for Invariants. This record will be updated as the complete artifact is submitted and as part of the artifact evaluation process.
View article: Temporal Prophecy for Proving Temporal Properties of Infinite-State\n Systems
Temporal Prophecy for Proving Temporal Properties of Infinite-State\n Systems Open
Various verification techniques for temporal properties transform temporal\nverification to safety verification. For infinite-state systems, these\ntransformations are inherently imprecise. That is, for some instances, the\ntemporal proper…
View article: Counterexample-Guided Prophecy for Model Checking Modulo the Theory of Arrays
Counterexample-Guided Prophecy for Model Checking Modulo the Theory of Arrays Open
We develop a framework for model checking infinite-state systems by automatically augmenting them with auxiliary variables, enabling quantifier-free induction proofs for systems that would otherwise require quantified invariants. We combin…
View article: A Thread-Local Semantics and Efficient Static Analyses for Race Free Programs
A Thread-Local Semantics and Efficient Static Analyses for Race Free Programs Open
Data race free (DRF) programs constitute an important class of concurrent programs. In this paper we provide a framework for designing and proving the correctness of data flow analyses that target this class of programs. These analyses are…
View article: Resources: A Safe Language Abstraction for Money
Resources: A Safe Language Abstraction for Money Open
Smart contracts are programs that implement potentially sophisticated transactions on modern blockchain platforms. In the rapidly evolving blockchain environment, smart contract programming languages must allow users to write expressive pr…
View article: Ivy: A Multi-modal Verification Tool for Distributed Algorithms
Ivy: A Multi-modal Verification Tool for Distributed Algorithms Open
Ivy is a multi-modal verification tool for correct design and implementation of distributed protocols and algorithms, supporting modular specification, implementation and proof. Ivy supports proving safety and liveness properties of parame…
View article: TASO
TASO Open
Existing deep neural network (DNN) frameworks optimize the computation graph of a DNN by applying graph transformations manually designed by human experts. This approach misses possible graph optimizations and is difficult to scale, as new…
View article: Bounded Quantifier Instantiation for Checking Inductive Invariants
Bounded Quantifier Instantiation for Checking Inductive Invariants Open
We consider the problem of checking whether a proposed invariant $\varphi$ expressed in first-order logic with quantifier alternation is inductive, i.e. preserved by a piece of code. While the problem is undecidable, modern SMT solvers can…