EDBT 2026 Demo / reviewers in the wild / expert
Laura Kovács
dblp:k/LauraKovacs · also Laura Ildikó Kovács
· DBLP profile ↗
105ranked-venue papers
19as first author
64since 2021 · last 2026
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 78 · 15 first-author · 51 since 2021Software engineering, systems software and programming languages · 52 · 9 first-author · 27 since 2021Artificial intelligence and machine learning · 36 · 6 first-author · 23 since 2021Security and privacy · 3 · 3 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Saturation-Guided Inductive Synthesis (Invited Talk)abstractProof by induction is common-place in mathematics [Josef Urban and Geoff Sutcliffe, 2010; Martin Desharnais et al., 2022], formal verification [Raven Beutner and Bernd Finkbeiner, 2024; Wolfgang Ahrendt et al., 2000; Pamina Georgiou et al., 2022], cybersecurity [Simon Jeanteur et al., 2024; Evan Laufer et al., 2024], and many more areas. This talk overviews recent progress in automating inductive reasoning in quantified logic, with applications to code synthesis. Key to our work is saturation-based first-order theorem proving [Laura Kovács and Andrei Voronkov, 2013], using variants of the superposition calculus [Robert Nieuwenhuis and Albert Rubio, 2001]. We show that induction and synthesis are better together in saturation, allowing us not only to prove quantified properties F, but also generate a functional implementation of F during proof search. We showcase our results using the first-order theorem prover Vampire [Filip Bártek et al., 2025], a completely automatic push-button theorem prover for first-order logic with theories, including arithmetic, inductively defined datatypes, induction, and higher-order logic. We structure our talk within three inter-connected parts. First, we overview the main ingredients behind saturation provers [Filip Bártek et al., 2025; Stephan Schulz et al., 2019; Christoph Weidenbach et al., 2009] using superposition. Such provers work by negating an input conjecture F, transforming ¬ F into a clausal normal form, and using superposition inferences to derive new clauses from existing ones until a contradiction is reached; when a contradiction is derived, validity of F is established. Many years of development in saturation-based theorem proving have gone into making this process as efficient as possible, while deriving new clauses only when needed in order to tame growth of the search space. Doing so, highly-efficient superposition calculi parametrized by so-called clause selection functions have been proposed, in order to make as few inferences between clauses as possible. Redundancy elimination techniques further prune the search space. Next, we show how to formalize applications of induction in the saturation process [Márton Hajdú et al., 2022], without bringing drastic changes into the overall framework of first-order proving. A natural choice for implementing induction would be by reducing goals to subgoals, in particular by proving a base case and an inductive step case of a valid induction principle. For example, a goal ∀ x. F(x) over natural numbers x can be proven using structural induction: we prove F[0] (base case) and ∀ x. F(x) ⇒ F(x+1) (step case). However, saturation theorem proving is not about reducing goals to subgoals: in principle, each clause in the search space can be chosen during any step of saturation. We therefore automate induction in saturation as follows. When a clause F(x) is chosen and inductive reasoning over F should be applied (for example, because F uses inductively defined data types x, such as natural numbers), we combine the application of a valid induction schema over F(x) with resolution. Put it simply, induction and resolution are combined in one step of saturation, allowing us to use parts of F(x) as subgoals of F(x). Interestingly with this approach is that clauses generated during saturation may be stronger than the induction schema and, most importantly, are friendly to saturation provers: they are mostly quantifier-free Horn clauses and their (at most one) positive equality cannot be used in many inferences during saturation. Thus, applying many induction inferences during proof search would hardly affect the performance of a saturation prover. Figure 1 lists a property over natural numbers: every natural number x is the half of another natural number y. Proving this property in saturation, and in particular using Vampire, can be achieved by (structural) induction over x. Finally, we extend saturation proof search with code synthesis [Petra Hozzová et al., 2024]. While proving formula F, we track the constructive parts of the proof of F using so-called answer literals [Cordell Green, 1969]. We use these parts to synthesize a program satisfying F and use the applications of induction in saturation to construct recursive programs satisfying F. In a nutshell, the base case and inductive case steps of induction in saturation express how to construct the desired program for the next recursive step using the program for the previous recursive step; we capture this information via answer literals. When we apply induction in saturation, we introduce a special term into the answer literal and record the program corresponding to the induction step. As we prove induction steps, we capture their corresponding programs in the answer literal. Finally, we convert the special tracker terms from the answer literals into recursive functions, and obtain a program satisfying property F. For example, from the proof of property of Figure 1, our approach implemented in Vampire infers the following functional implementation of a recursive function r, while using only the signature of Figure 1: 𝗋(0) & := 0 𝗋(s(x)) & := s(s(𝗋(x))) The above inferred function r satisfies the property of Figure 1 and, for each input natural number x, computes a natural number 𝗋(x) such that x is half of 𝗋(x). In summary, induction and synthesis are better together in saturation-based theorem proving using the superposition calculus. Soundness and practical use of our work has been addressed and experimented using the Vampire theorem prover, both in the case of automating induction [Márton Hajdú et al., 2022; Márton Hajdú et al., 2024] and program synthesis [Petra Hozzová et al., 2023; Petra Hozzová et al., 2024]. Interesting questions regarding completeness arise: if a program satisfying a given property exists, can we derive it from saturation-based proof search? Our recent results [Hajdu et al., 2026] answer this question for recursion-free program using additional assumptions of realizability. A natural direction for future work is to identify realizability assumptions for recursive program synthesis and induction. Laura Kovács |
FSCD | 1 |
| 2026 | Completeness of Synthesis Under Realizability Assumptions Using SuperpositionabstractAbstract Program synthesis is the task of automatically deriving a program that has been specified by a user in advance. Combining automated theorem proving with program synthesis enables the automated construction of proven-to-be-correct programs, thereby ensuring software reliability. In this paper, we consider the superposition-based calculus extended to support synthesis of recursion-free programs allowing reasoning with uncomputable symbols. We present cases where the calculus fails and refine it to solve them. We prove that the refined calculus is sound. Finally, we also prove completeness in the following sense: if at least one computable program satisfying the given specification exists, we show that the modified calculus finds one. Márton Hajdú, Petra Hozzová, Laura Kovács, Eva Maria Wagner |
IJCAR (1) | 3 |
| 2026 | Lean on Vampire Proofs (Short Paper)abstractVampire proves theorems completely automatically in first- and higher-order logic extended with theories. Proof checking is increasingly demanded to consolidate user trust in Vampire’s output. We describe ongoing efforts in reconstructing Vampire proofs as trusted proofs in Lean. Our experiments showcase feasibility of generating trusted Vampire proofs that are validated in Lean. Jonas Bodingbauer, Márton Hajdú, Laura Kovács, Axel Polaczek, Michael Rawson 0001 |
ITP | 3 |
| 2026 | Generalizing CDCL with Graph BacktrackingabstractWe present graph backtracking, a novel, fine-grained backtracking scheme for CDCL-based SAT solving, parametrized by a user-defined weight function. For conflict repair, we challenge the decision level abstraction and use the implication graph as a precise guiding structure to minimize the weight of literals that are unassigned. Graph backtracking is sound, complete, and terminating. We show that it is a generalization of chronological and non-chronological backtracking by simulating them with specific weight functions. Our approach is implemented in the experimental solver NapSAT. Empirical results show that graph backtracking requires fewer literal propagations than standard approaches, leading to improved solver runtime. Robin Coutelier, Thomas Hader, Laura Kovács |
SAT | 3 |
| 2026 | SAT in Saturation: A Satisfied Match (Invited Talk)abstractSaturation is the leading concept behind the proof-search algorithms of state-of-the-art first-order theorem provers [Filip Bártek et al., 2025; Christoph Weidenbach et al., 2009; Stephan Schulz et al., 2019]. The key idea behind saturation-based proof search is to reduce the problem of proving validity of a first-order formula to the problem of establishing unsatisfiability of the respective formula, by using a sound inference system, such as resolution and superposition [Leo Bachmair and Harald Ganzinger, 2001; Robert Nieuwenhuis and Albert Rubio, 2001]. Central to efficient saturation-based proof search is the implementation of redundancy in the form of simplification rules [John Alan Robinson, 1965; Laura Kovács and Andrei Voronkov, 2013]: such rules do not add new formulas to search space, but instead simplify/delete redundant formulas from the search space, while not loosing refutational completeness of superposition. Redundancy in first-order theorem proving is controlled via term/clause ordering and literal selection functions in extension of standard superposition: redundant clauses are logical consequences of smaller clauses with respect to the considered ordering. While redundancy is essential for efficient proof search, establishing whether an arbitrary first-order formula is redundant is as hard as proving whether it is valid. First-order provers therefore implement sufficient conditions towards proving redundancy, so that these conditions can be efficiently checked, ideally using only syntactic arguments over formulas. One such condition comes with the notion of subsumption, yielding one of the most important simplification rules in automated reasoners [Leo Bachmair and Harald Ganzinger, 1994]. It is common that millions of subsumption checks are performed during a single solver run [Jakob Rath et al., 2022]. However, in contrast to propositional subsumption as used by SAT solvers and implemented using sophisticated polynomial algorithms, first-order subsumption in first-order theorem proving involves NP-complete search queries, turning the efficient use of first-order subsumption into a huge practical burden. This talks presents a tailored integration of SAT solving for detecting variants of subsumption in superposition. Key to our approach is retrieving clauses from the search space and checking whether subsumption with retrieved clauses can be applied, using multi-literal matching. A solution to our SAT-based encoding gives a concrete application of (variants of) subsumption, allowing the first-order prover to apply that instance of subsumption as a simplification rule during saturation [Bernhard Gleiss et al., 2020; Jakob Rath et al., 2022; Robin Coutelier et al., 2025]. Our SAT encoding captures subset relations among literals/clauses and formalizes matching of literals between inference premises/conclusions. We show that SAT encodings improve literal matching, and thus subsumption, in first-order theorem proving. In particular, our experimental results using the Vampire prover demonstrate the practical benefits of using SAT solving for variants of first-order subsumption. Laura Kovács |
SAT | 1 |
| 2026 | Moments in Time: Algebraic Analysis for Solvable Loops (Invited Talk)abstractWith substantial progress in automated reasoning, algebraic approaches emerged to automatically analyse program loops in an exact manner. In this invited talk, we discuss recent results in characterizing the functional behaviour of loops with polynomial arithmetic and probabilistic updates. This problem remains unsolved even when we restrict consideration to loops that are non-nested, without conditionals, and/or without exit conditions [Ehud Hrushovski et al., 2023; Julian Müllner and others, 2024]. We are motivated by applications of computer-aided verification, in particular to assess the safety, security, and sensitivity of computer systems [M. Z. Kwiatkowska et al., 2011; Gilles Barthe et al., 2012; Gilles Barthe and others, 2018; Marcel Moosbrugger et al., 2023; Alessandro Abate et al., 2023; Andrey Kofnov and others, 2024]. We are interested in modeling, deciding, and solving loop analysis. The key to our work are moment-computable loops [L. Kovács, 2008; Marcel Moosbrugger et al., 2022] which allow us to set limits on what is decidable and solvable in loop analysis. Our approach combines algebra, statistics, and automated reasoning to mechanize loop analysis. Various techniques, such as martingale theory and quantifier elimination, can be seen as examples of moment-computable loop analysis. This talk is structured within three inter-connected parts. We first bring moment-based loop analysis into the landscape of {loop invariant synthesis} and extend moment-computable loops with {termination guarantees}. We next automate the reasoning about (probabilistic) loops by summarizing loop semantics as (probabilistic) algebraic recurrences, whose closed-form solutions capture (higher-order) moments, and hence invariants, among loop variables. These recurrences together with loop tests yield moment-based (super)martingales necessary to prove loop termination and compute probability bounds on termination. We finally describe moment-computable loops whose invariant synthesis {decidable} or as {hard} as open problems, such as the Skolem problem [Graham Everest et al., 2003; Terrence Tao, 2008]. Laura Kovács |
STACS | 1 |
| 2026 | Introduction to the Special Collection on iFM 2024
Nikolai Kosmatov, Laura Kovács |
Formal Aspects Comput. | 2 |
| 2026 | LLMs and fuzzing in tandem: a new approach to automatically generating weakest preconditionsabstractAbstract The weakest precondition (WP) of a program describes the largest set of initial states from which all terminating executions of the program satisfy a given postcondition. The generation of WPs is an important task with practical applications in areas ranging from verification to run-time error checking. This paper proposes the combination of Large Language Models (LLMs) and fuzz testing for generating WPs. In pursuit of this goal, we introduce Fuzzing Guidance (FG); FG acts as a means of directing LLMs towards correct WPs using program execution feedback. FG utilises fuzz testing for approximately checking the validity and weakness of candidate WPs, this information is then fed back to the LLM as a means of context refinement. We demonstrate the effectiveness of our approach on a comprehensive benchmark set of deterministic array programs in Java. Our experiments indicate that LLMs are capable of producing viable candidate WPs, and that this ability can be practically enhanced through FG. Daragh King, Vasileios Koutavas, Laura Kovács |
Int. J. Softw. Tools Technol. Transf. | 3 |
| 2025 | Term Ordering DiagramsabstractAbstract The superposition calculus for reasoning in first-order logic with equality relies on simplification orderings on terms. Modern saturation provers use the Knuth-Bendix order (KBO) and the lexicographic path order (LPO) for discovering redundant clauses and inferences. Implementing term orderings is, however, challenging. While KBO comparisons can be performed in linear time and LPO checks in quadratic time, using the best-known algorithms for these orders is not enough. Indeed, our experiments show that for some examples, term ordering checks may use about 98% of the overall proving time. The reason for this is that some equalities that cannot be ordered can become ordered after applying a substitution (post-ordered), and we have to check for post-ordering repeatedly for the same equalities. In this paper, we show how to improve post-ordering checks by introducing a new data structure called term ordering diagrams , in short TODs, which creates an index for these checks. We achieve efficiency by lazy modifications of the index and by storing and reusing information from previously performed checks to speed up subsequent checks. Our experiments demonstrate the efficiency of TODs. Márton Hajdú, Robin Coutelier, Laura Kovács, Andrei Voronkov |
CADE | 3 |
| 2025 | Partial Redundancy in SaturationabstractAbstract Redundancy elimination is one of the crucial ingredients of efficient saturation-based proof search. We strengthen redundancy elimination by introducing a new notion of redundancy, based on partial clauses and redundancy formulas . The new notion allows us to recognize redundant clauses and inferences that cannot be recognized by standard redundancy elimination criteria. In a way, our notion blurs the distinction between redundancy at the level of inferences and redundancy at the level of clauses. We present a superposition calculus PaRC on partial clauses and prove that it is refutationally complete. We discuss the implementation of the calculus in the theorem prover Vampire . Our experiments show the power of the new approach: we were able to solve 24 TPTP problems not previously solved by any prover, including previous versions of Vampire . Márton Hajdú, Laura Kovács, Andrei Voronkov |
CADE | 2 |
| 2025 | The Vampire DiaryabstractAbstract During the past decade of continuous development, the theorem prover Vampire has become an automated solver for the combined theories of commonly-used data structures. Vampire now supports arithmetic, induction, and higher-order logic. These advances have been made to meet the demands of software verification, enabling Vampire to effectively complement SAT/SMT solvers and aid proof assistants. We explain how best to use Vampire in practice and review the main changes Vampire has undergone since its last tool presentation, focusing on the engineering principles and design choices we made during this process. Filip Bártek, Ahmed Bhayat, Robin Coutelier, Márton Hajdú, Matthias Hetzenberger, Petra Hozzová, Laura Kovács, Jakob Rath, Michael Rawson 0001, Giles Reger, Martin Suda 0001, Johannes Schoisswohl, Andrei Voronkov |
CAV (3) | 7 |
| 2025 | Game Modeling of Blockchain Protocols
Sophie Rain, Anja Petkovic Komel, Michael Rawson 0001, Laura Kovács |
iFM | 4 |
| 2025 | Synthesis Benchmarks for Automated ReasoningabstractAbstract Program synthesis is the task of constructing a program conforming to a given specification. We focus on deductive synthesis, and in particular on synthesis problems with specifications given as $$\forall \exists $$ ∀ ∃ -formulas, expressing the existence of an output corresponding to any input. So far there has been no canonical benchmark set for deductive synthesis using the $$\forall \exists $$ ∀ ∃ -format and supporting the so-called uncomputable symbol restriction. This work presents such a data set, composed by complementing existing benchmarks by new ones. Our data set is dynamically growing and should motivate future developments in the theory and practice of automating synthesis. Márton Hajdú, Petra Hozzová, Laura Kovács, Andrei Voronkov, Eva Maria Wagner, Richard Steven Zilincík |
CICM | 3 |
| 2025 | Finding Connections via Satisfiability SolvingabstractAbstract Commonly used proof strategies by automated reasoners organise proof search either by ordering-based saturation or by reducing goals to subgoals. In this paper, we combine these two approaches and advocate a SAT-based method with symmetry breaking for connection calculi in first-order logic, with the purpose of further pushing the automation in first-order classical logic proofs. In contrast to classical ways of reducing first-order logic to propositional logic, our method encodes the structure of the proof search itself. We present three distinct SAT encodings for connection calculi, analyse their theoretical properties, and discuss the effect of using SAT/SMT solvers on these encodings. We implemented our work in the new solver UPCoP and showcase its practical feasibility. Clemens Eisenhofer, Michael Rawson 0001, Laura Kovács |
TABLEAUX | 3 |
| 2025 | On Solving String Equations via Powers and Parikh ImagesabstractAbstract We present a new approach for solving string equations as extensions of Nielsen transformations. Key to our work are the combination of three techniques: a power operator for strings; generalisations of Parikh images; and equality decomposition. Using these methods allows us to solve complex string equations, including less commonly encountered SMT inputs over strings. Clemens Eisenhofer, Theodor Seiser, Nikolaj S. Bjørner, Laura Kovács |
TABLEAUX | 4 |
| 2025 | Constraint Learning for Non-confluent Proof SearchabstractAbstract Proof search in non-confluent tableau calculi, such as the connection tableau calculus, suffers from excess backtracking, but simple restrictions on backtracking are incomplete. We adopt constraint learning to reduce backtracking in the classical first-order connection calculus, while retaining completeness. An initial constraint learning language for connection-driven search is iteratively refined to greatly reduce backtracking in practice. The approach may be useful for proof search in other non-confluent tableau calculi. Michael Rawson 0001, Clemens Eisenhofer, Laura Kovács |
TABLEAUX | 3 |
| 2025 | (Un)Solvable loop analysisabstractAbstract Automatically generating invariants, key to computer-aided analysis of probabilistic and deterministic programs and compiler optimisation, is a challenging open problem. Whilst the problem is in general undecidable, the goal is settled for restricted classes of loops. For the class of solvable loops, introduced by Rodríguez-Carbonell and Kapur (in: Proceedings of the ISSAC, pp 266–273, 2004), one can automatically compute invariants from closed-form solutions of recurrence equations that model the loop behaviour. In this paper we establish a technique for invariant synthesis for loops that are not solvable, termed unsolvable loops. Our approach automatically partitions the program variables and identifies the so-called defective variables that characterise unsolvability. Herein we consider the following two applications. First, we present a novel technique that automatically synthesises polynomials from defective monomials, that admit closed-form solutions and thus lead to polynomial loop invariants. Second, given an unsolvable loop, we synthesise solvable loops with the following property: the invariant polynomials of the solvable loops are all invariants of the given unsolvable loop. Our implementation and experiments demonstrate both the feasibility and applicability of our approach to both deterministic and probabilistic programs. Daneshvar Amrollahi, Ezio Bartocci, George Kenison, Laura Kovács, Marcel Moosbrugger, Miroslav Stankovic |
Formal Methods Syst. Des. | 4 |
| 2025 | Correction: (Un)Solvable loop analysisabstractDisplayed equation in Definition 71.1 Online version 1.2 Revision L(x, y) = L if x depends linearly on y, and N if x depends nonlinearly on y.L(x, y) ∶= L if x depends linearly on y, and N if x depends non-linearly on y. Daneshvar Amrollahi, Ezio Bartocci, George Kenison, Laura Kovács, Marcel Moosbrugger, Miroslav Stankovic |
Formal Methods Syst. Des. | 4 |
| 2025 | SAT solving for variants of first-order subsumptionabstractAbstract Automated reasoners, such as SAT/SMT solvers and first-order provers, are becoming the backbones of rigorous systems engineering, being used for example in applications of system verification, program synthesis, and cybersecurity. Automation in these domains crucially depends on the efficiency of the underlying reasoners towards finding proofs and/or counterexamples of the task to be enforced. In order to gain efficiency, automated reasoners use dedicated proof rules to keep proof search tractable. To this end, (variants of) subsumption is one of the most important proof rules used by automated reasoners, ranging from SAT solvers to first-order theorem provers and beyond. It is common that millions of subsumption checks are performed during proof search, necessitating efficient implementations. However, in contrast to propositional subsumption as used by SAT solvers and implemented using sophisticated polynomial algorithms, first-order subsumption in first-order theorem provers involves NP-complete search queries, turning the efficient use of first-order subsumption into a huge practical burden. In this paper we argue that the integration of a dedicated SAT solver opens up new venues for efficient implementations of first-order subsumption and related rules. We show that, by using a flexible learning approach to choose between various SAT encodings of subsumption variants, we greatly improve the scalability of first-order theorem proving. Our experimental results demonstrate that, by using a tailored SAT solver within first-order reasoning, we gain a large speedup in solving state-of-the-art benchmarks. Robin Coutelier, Jakob Rath, Michael Rawson 0001, Armin Biere, Laura Kovács |
Formal Methods Syst. Des. | 5 |
| 2025 | Divide and Conquer: A Compositional Approach to Game-Theoretic SecurityabstractWe propose a compositional approach to combine and scale automated reasoning in the static analysis of decentralized system security, such as blockchains. Our focus lies in the game-theoretic security analysis of such systems, allowing us to examine economic incentives behind user actions. In this context, it is particularly important to certify that deviating from the intended, honest behavior of the decentralized protocol is not beneficial: as long as users follow the protocol, they cannot be financially harmed, regardless of how others behave. Such an economic analysis of blockchain protocols can be encoded as an automated reasoning problem in the first-order theory of real arithmetic, reducing game-theoretic reasoning to satisfiability modulo theories (SMT). However, analyzing an entire game-theoretic model (called a game) as a single SMT instance does not scale to protocols with millions of interactions. We address this challenge and propose a divide-and-conquer security analysis based on compositional reasoning over games. Our compositional analysis is incremental: we divide games into subgames such that changes to one subgame do not necessitate re-analyzing the entire game, but only the ancestor nodes. Our approach is sound, complete, and effective: combining the security properties of subgames yields security of the entire game. Experimental results show that compositional reasoning discovers intra-game properties and errors while scaling to games with millions of nodes, enabling security analysis of large protocols. Ivana Bocevska, Anja Petkovic Komel, Laura Kovács, Sophie Rain, Michael Rawson 0001 |
Proc. ACM Program. Lang. | 3 |
| 2024 | MCSat-Based Finite Field Reasoning in the Yices2 SMT Solver (Short Paper)abstractAbstract This system description introduces an enhancement to the Yices2 SMT solver, enabling it to reason over non-linear polynomial systems over finite fields. Our reasoning approach fits into the model-constructing satisfiability (MCSat) framework and is based on zero decomposition techniques, which find finite basis explanations for theory conflicts over finite fields. As the MCSat solver within Yices2 can support (and combine) several theories via theory plugins, we implemented our reasoning approach as a new plugin for finite fields and extended Yices2 ’s frontend to parse finite field problems, making our implementation the first MCSat-based reasoning engine for finite fields. We present its evaluation on finite field benchmarks, comparing it against cvc5. Additionally, our work leverages the modular architecture of the MCSat solver in Yices2 to provide a foundation for the rapid implementation of further reasoning techniques for this theory. Thomas Hader, Daniela Kaufmann, Ahmed Irfan, Stéphane Lengrand, Laura Kovács |
IJCAR (1) | 5 |
| 2024 | Reducibility Constraints in SuperpositionabstractAbstract Modern superposition inference systems aim at reducing the search space by introducing redundancy criteria on clauses and inferences. This paper focuses on reducing the number of superposition inferences with a single clause by blocking inferences into some terms, provided there were previously made inferences of a certain form performed with predecessors of this clause. Other calculi based on blocking inferences, for example basic superposition, rely on variable abstraction or equality constraints to express irreducibility of terms, resulting however in blocking inferences with all subterms of the respective terms. Here we introduce reducibility constraints in superposition to enable a more expressive blocking mechanism for inferences. We show that our calculus remains (refutationally) complete and present redundancy notions. Our implementation in the theorem prover Vampire demonstrates a considerable reduction in the size of the search space when using our new calculus. Márton Hajdú, Laura Kovács, Michael Rawson 0001, Andrei Voronkov |
IJCAR (1) | 2 |
| 2024 | Synthesis of Recursive Programs in SaturationabstractAbstract We turn saturation-based theorem proving into an automated framework for recursive program synthesis. We introduce magic axioms as valid induction axioms and use them together with answer literals in saturation. We introduce new inference rules for induction in saturation and use answer literals to synthesize recursive functions from these proof steps. Our proof-of-concept implementation in the Vampire theorem prover constructs recursive functions over algebraic data types, while proving inductive properties over these types. Petra Hozzová, Daneshvar Amrollahi, Márton Hajdú, Laura Kovács, Andrei Voronkov, Eva Maria Wagner |
IJCAR (1) | 4 |
| 2024 | Induction in SaturationabstractAbstract Proof by induction is commonplace in modern mathematics and computational logic. This paper overviews and discusses our recent results in turning saturation-based first-order theorem proving into a powerful framework for automating inductive reasoning. We formalize applications of induction as new inference rules of the saturation process, add instances of appropriate induction schemata to the search space, and use these rules and instances immediately upon their addition for the purpose of guiding induction. Our results show, for example, that many problems from formal verification and mathematical theories can now be solved completely automatically using a first-order theorem prover. Laura Kovács, Petra Hozzová, Márton Hajdú, Andrei Voronkov |
IJCAR (1) | 1 |
| 2024 | Saturating Sorting without SortsabstractWe present a first-order theorem proving framework for establishing the correctness of functional programs implementing sorting algorithms with recursive data structures. We formalize the semantics of recursive programs in many-sorted first-order logic and integrate sortedness/permutation properties within our first-order formalization. Rather than focus- ing on sorting lists of elements of specific first-order theories, such as integer arithmetic, our list formalization relies on a sort parameter abstracting (arithmetic) theories and hence concrete sorts. We formalize the permutation property of lists in first-order logic so that we automatically prove verification conditions of such algorithms purely by superpositon- based first-order reasoning. Doing so, we adjust recent efforts for automating induction in saturation. We advocate a compositional approach for automating proofs by induction re- quired to verify functional programs implementing and preserving sorting and permutation properties over parameterized list structures. Our work turns saturation-based first-order theorem proving into an automated verification engine by (i) guiding automated inductive reasoning with manual proof splits and (ii) fully automating inductive reasoning in satu- ration. We showcase the applicability of our framework over recursive sorting algorithms, including Mergesort and Quicksort. Pamina Georgiou, Márton Hajdú, Laura Kovács |
LPAR | 3 |
| 2024 | Rewriting and Inductive ReasoningabstractRewriting techniques based on reduction orderings generate “just enough” consequences to retain first-order completeness. This is ideal for superposition-based first-order theorem proving, but for at least one approach to inductive reasoning we show that we are miss- ing crucial consequences. We therefore extend the superposition calculus with rewriting- based techniques to generate sufficient consequences for automating induction in satura- tion. When applying our work within the unit-equational fragment, our experiments with the theorem prover Vampire show significant improvements for inductive reasoning. Márton Hajdú, Laura Kovács, Michael Rawson 0001 |
LPAR | 2 |
| 2024 | Scaling CheckMate for Game-Theoretic SecurityabstractWe present the CheckMate tool for automated verification of game-theoretic secu- rity properties, with application to blockchain protocols. CheckMate applies automated reasoning techniques to determine whether a game-theoretic protocol model is game- theoretically secure, that is, Byzantine fault tolerant and incentive compatible. We describe CheckMate’s input format and its various components, modes, and output. CheckMate is evaluated on 15 benchmarks, including models of decentralized protocols, board games, and game-theoretic examples. Sophie Rain, Lea Salome Brugger, Anja Petkovic Komel, Laura Kovács, Michael Rawson 0001 |
LPAR | 4 |
| 2024 | VIRAS: Conflict-Driven Quantifier Elimination for Integer-Real ArithmeticabstractWe introduce Virtual Integer-Real Arithmetic Substitution (Viras), a quantifier elim- ination procedure for deciding quantified linear mixed integer-real arithmetic problems. Viras combines the framework of virtual substitutions with conflict-driven proof search and linear integer arithmetic reasoning based on Cooper’s method. We demonstrate that Viras gives an exponential speedup over state-of-the-art methods in quantified arithmetic reasoning, proving problems that SMT-based techniques fail to solve. Johannes Schoisswohl, Laura Kovács, Konstantin Korovin |
LPAR | 2 |
| 2024 | Lazy Reimplication in Chronological Backtracking
Robin Coutelier, Mathias Fleury, Laura Kovács |
SAT | 3 |
| 2024 | CryptoVampire: Automated Reasoning for the Complete Symbolic Attacker Cryptographic ModelabstractCryptographic protocols are hard to design and prove correct, as witnessed by the ever-growing list of attacks even on protocol standards. Symbolic models of cryptography enable automated formal security proofs of such protocols against an idealized cryptographic model, which abstracts away from the algebraic properties of cryptographic schemes and thus misses attacks. Computational models of cryptography yield rigorous guarantees but support at present only interactive proofs and/or restricted classes of protocols (e.g., stateless ones). A promising approach is given by the computationally complete symbolic attacker (CCSA) model, formalized in the BC Logic, which aims at bridging and getting the best of the two worlds, obtaining cryptographic guarantees by symbolic protocol analysis. The BC Logic is supported by a recently developed interactive theorem prover, namely Squirrel, which enables machine-checked interactive security proofs, as opposed to automated ones, thus requiring expert knowledge both in the cryptographic space as well as on the reasoning side.In this paper, we introduce the CryptoVampire cryptographic protocol verifier, which for the first time fully automates proofs of trace properties in the BC Logic. The key technical contribution is a first-order formalization of protocol properties with tailored handling of subterm relations. As such, we overcome the burden of interactive proving in higher-order logic and automatically establish soundness of cryptographic protocols using only first-order reasoning. Our first-order encoding of cryptographic protocols is challenging for various reasons. On the theoretical side, we restrict full first-order logic with cryptographic axioms to ensure that, by losing the expressivity of the higher-order BC Logic, we do not lose soundness of cryptographic protocols in our first-order encoding. On the practical side, CryptoVampire integrates dedicated proof techniques using first-order saturation algorithms and heuristics, which all together enable leveraging the state-of-the-art Vampire first-order automated theorem prover as the underlying proving engine of CryptoVampire. Our experimental results showcase the effectiveness of CryptoVampire as a standalone verifier as well as in terms of automation support for Squirrel. Simon Jeanteur, Laura Kovács, Matteo Maffei, Michael Rawson 0001 |
SP | 2 |
| 2024 | Linear Loop Synthesis for Quadratic InvariantsabstractInvariants are key to formal loop verification as they capture loop properties that are valid before and after each loop iteration. Yet, generating invariants is a notorious task already for syntactically restricted classes of loops. Rather than generating invariants for given loops, in this paper we synthesise loops that exhibit a predefined behaviour given by an invariant. From the perspective of formal loop verification, the synthesised loops are thus correct by design and no longer need to be verified. To overcome the hardness of reasoning with arbitrarily strong invariants, in this paper we construct simple (non-nested) while loops with linear updates that exhibit polynomial equality invariants. Rather than solving arbitrary polynomial equations, we consider loop properties defined by a single quadratic invariant in any number of variables. We present a procedure that, given a quadratic equation, decides whether a loop with affine updates satisfying this equation exists. Furthermore, if the answer is positive, the procedure synthesises a loop and ensures its variables achieve infinitely many different values. S. Hitarth, George Kenison, Laura Kovács, Anton Varonka |
STACS | 3 |
| 2024 | Strong Invariants Are Hard: On the Hardness of Strongest Polynomial Invariants for (Probabilistic) ProgramsabstractWe show that computing the strongest polynomial invariant for single-path loops with polynomial assignments is at least as hard as the Skolem problem, a famous problem whose decidability has been open for almost a century. While the strongest polynomial invariants are computable for affine loops , for polynomial loops the problem remained wide open. As an intermediate result of independent interest, we prove that reachability for discrete polynomial dynamical systems is Skolem -hard as well. Furthermore, we generalize the notion of invariant ideals and introduce moment invariant ideals for probabilistic programs. With this tool, we further show that the strongest polynomial moment invariant is (i) uncomputable, for probabilistic loops with branching statements, and (ii) Skolem -hard to compute for polynomial probabilistic loops without branching statements. Finally, we identify a class of probabilistic loops for which the strongest polynomial moment invariant is computable and provide an algorithm for it. Julian Müllner, Marcel Moosbrugger, Laura Kovács |
Proc. ACM Program. Lang. | 3 |
| 2023 | What Else is Undecidable About Loops?
Laura Kovács, Anton Varonka |
RAMiCS | 1 |
| 2023 | SAT-Based Subsumption ResolutionabstractAbstract Subsumption resolution is an expensive but highly effective simplifying inference for first-order saturation theorem provers. We present a new SAT-based reasoning technique for subsumption resolution, without requiring radical changes to the underlying saturation algorithm. We implemented our work in the theorem proverVampire, and show that it is noticeably faster than the state of the art. Robin Coutelier, Laura Kovács, Michael Rawson 0001, Jakob Rath |
CADE | 2 |
| 2023 | Program Synthesis in SaturationabstractAbstract We present an automated reasoning framework for synthesizing recursion-free programs using saturation-based theorem proving. Given a functional specification encoded as a first-order logical formula, we use a first-order theorem prover to both establish validity of this formula and discover program fragments satisfying the specification. As a result, when deriving a proof of program correctness, we also synthesize a program that is correct with respect to the given specification. We describe properties of the calculus that a saturation-based prover capable of synthesis should employ, and extend the superposition calculus in a corresponding way. We implemented our work in the first-order prover Vampire, extending the successful applicability of first-order proving to program synthesis. Petra Hozzová, Laura Kovács, Chase Norman, Andrei Voronkov |
CADE | 2 |
| 2023 | CheckMate: Automated Game-Theoretic Security ReasoningabstractWe present the CheckMate framework for full automation of game-theoretic security analysis, with particular focus on blockchain technologies. CheckMate analyzes protocols modeled as games for their game-theoretic security - that is, for incentive compatibility and Byzantine fault-tolerance. The framework either proves the protocols secure by providing defense strategies or yields all possible attack vectors. For protocols that are not secure, CheckMate can also provide weakest preconditions under which the protocol becomes secure, if they exist. CheckMate implements a sound and complete encoding of game-theoretic security in first-order linear real arithmetic, thereby reducing security analysis to satisfiability solving. CheckMate further automates efficient handling of case splitting on arithmetic terms. Experiments show CheckMate scales, analyzing games with trillions of strategies that model phases of Bitcoin's Lightning Network. Lea Salome Brugger, Laura Kovács, Anja Petkovic Komel, Sophie Rain, Michael Rawson 0001 |
CCS | 2 |
| 2023 | Towards a Game-Theoretic Security Analysis of Off-Chain ProtocolsabstractOff-chain protocols constitute one of the most promising approaches to solve the inherent scalability issue of blockchain technologies. The core idea is to let parties transact on-chain only once to establish a channel between them, leveraging later on the resulting channel paths to perform arbitrarily many peer-to-peer transactions off-chain. While significant progress has been made in terms of proof techniques for off-chain protocols, existing approaches do not capture the game-theoretic incentives at the core of their design, which led to overlooking significant attack vectors like the Wormhole attack in the past. In this work we take a first step towards a principled game-theoretic security analysis of off-chain protocols by introducing the first game-theoretic model that is expressive enough to reason about their security. We advocate the use of Extensive Form Games (EFGs) and introduce two instances of EFGs to capture security properties of the closing and the routing of the Lightning Network. Specifically, we model the closing protocol, which relies on punishment mechanisms to disincentivize parties to upload old channel states on-chain. Moreover, we model the routing protocol, thereby formally characterizing the Wormhole attack, a vulnerability that undermines the fee-based incentive mechanism underlying the Lightning Network. Sophie Rain, Zeta Avarikioti, Laura Kovács, Matteo Maffei |
CSF | 3 |
| 2023 | Symbolic Computation in Automated Program Reasoning
Laura Kovács |
FM | 1 |
| 2023 | Automated Sensitivity Analysis for Probabilistic Loops
Marcel Moosbrugger, Julian Müllner, Laura Kovács |
iFM | 3 |
| 2023 | From Polynomial Invariants to Linear LoopsabstractLoop invariants are software properties that hold before and after every iteration of a loop. As such, invariants provide inductive arguments that are key in automating the verification of program loops. The problem of generating loop invariants; in particular, invariants described by polynomial relations (so called polynomial invariants), is therefore one of the hardest problems in software verification. In this paper we advocate an alternative solution to invariant generation. Rather than inferring invariants from loops, we synthesise loops from invariants. As such, we generate loops that satisfy a given set of polynomials; in other words, our synthesised loops are correct by construction. George Kenison, Laura Kovács, Anton Varonka |
ISSAC | 2 |
| 2023 | Algebra-Based Loop AnalysisabstractAutomating loop analysis, and in particular synthesizing loop invariants, is a central challenge in the computer-aided verification of programs with loops, with applications in compiler optimization, probabilistic programming and IT security. While this challenge is in general undecidable, several techniques have emerged to automatically summarize the functional behaviour of software loops, thus providing inductive loop invariants that may prevent programmers from introducing errors while making changes in their code. In this tutorial, we show that novel combinations of methods from computer algebra, algorithmic combinatorics and static loop analysis provide powerful workhorses to derive (all) polynomial loop invariants, synthesize affine loops from invariants, and infer quantitative properties over the value distributions of probabilistic loop variables. Laura Kovács |
ISSAC | 1 |
| 2023 | Refining Unification with AbstractionabstractAutomated reasoning with theories and quantifiers is a common demand in formal methods. A major challenge that arises in this respect comes with rewriting/simplifying terms that are equal with respect to a background first-order theory T , as equality reasoning in this context requires unification modulo T . We introduce a refined algorithm for unification with abstraction in T , allowing for a fine-grained control of equality constraints and substitutions introduced by standard unification with abstraction approaches. We experimentally show the benefit of our approach within first-order linear rational arithmetic. Ahmed Bhayat, Konstantin Korovin, Laura Kovács, Johannes Schoisswohl |
LPAR | 3 |
| 2023 | SMT Solving over Finite Field ArithmeticabstractNon-linear polynomial systems over finite fields are used to model functional behavior of cryptosystems, with applications in system security, computer cryptography, and post- quantum cryptography. Solving polynomial systems is also one of the most difficult problems in mathematics. In this paper, we propose an automated reasoning procedure for deciding the satisfiability of a system of non-linear equations over finite fields. We introduce zero decomposition techniques to prove that polynomial constraints over finite fields yield finite basis explanation functions. We use these explanation functions in model constructing satisfiability solving, allowing us to equip a CDCL-style search procedure with tailored theory reasoning in SMT solving over finite fields. We implemented our approach and provide a novel and effective reasoning prototype for non-linear arithmetic over finite fields. Thomas Hader, Daniela Kaufmann, Laura Kovács |
LPAR | 3 |
| 2023 | Algebraic Reasoning for (Un)Solvable Loops (Invited Talk)
Laura Kovács |
MFCS | 1 |
| 2023 | Non-Classical Logics in Satisfiability Modulo TheoriesabstractAbstract We show that tableau methods for satisfiability in non-classical logics can be supported naturally in SMT solving via the framework of user-propagators. By way of demonstration, we implement the description logic $$\mathcal {ALC}$$ in the Z3 SMT solver and show that working with user-propagators allows us to significantly outperform encodings to first-order logic with relatively little effort. We promote user-propagators for creating solvers for non-classical logics based on tableau calculi. Clemens Eisenhofer, Ruba Alassaf, Michael Rawson 0001, Laura Kovács |
TABLEAUX | 4 |
| 2023 | ALASCA: Reasoning in Quantified Linear ArithmeticabstractAbstract Automated reasoning is routinely used in the rigorous construction and analysis of complex systems. Among different theories, arithmetic stands out as one of the most frequently used and at the same time one of the most challenging in the presence of quantifiers and uninterpreted function symbols. First-order theorem provers perform very well on quantified problems due to the efficient superposition calculus, but support for arithmetic reasoning is limited to heuristic axioms. In this paper, we introduce the $$\textsc {Alasca}$$ A L A S C A calculus that lifts superposition reasoning to the linear arithmetic domain. We show that $$\textsc {Alasca}$$ A L A S C A is both sound and complete with respect to an axiomatisation of linear arithmetic. We implemented and evaluated $$\textsc {Alasca}$$ A L A S C A using the Vampire theorem prover, solving many more challenging problems compared to state-of-the-art reasoners. Konstantin Korovin, Laura Kovács, Giles Reger, Johannes Schoisswohl, Andrei Voronkov |
TACAS (1) | 2 |
| 2023 | Satisfiability Modulo Custom Theories in Z3
Nikolaj S. Bjørner, Clemens Eisenhofer, Laura Kovács |
VMCAI | 3 |
| 2023 | Lonely Points in SimplicesabstractAbstract Given a lattice $$L\subseteq \mathbb Z^m$$ L ⊆ Z m and a subset $$A\subseteq \mathbb R^m$$ A ⊆ R m , we say that a point in A is lonely if it is not equivalent modulo $$L$$ L to another point of A. We are interested in identifying lonely points for specific choices of $$L$$ L when A is a dilated standard simplex, and in conditions on $$L$$ L which ensure that the number of lonely points is unbounded as the simplex dilation goes to infinity. Maximilian Jaroschek, Manuel Kauers, Laura Kovács |
Discret. Comput. Geom. | 3 |
| 2022 | The Rapid Software Verification Framework
Pamina Georgiou, Bernhard Gleiss, Ahmed Bhayat, Michael Rawson 0001, Laura Kovács, Giles Reger |
FMCAD | 5 |
| 2022 | First-Order Subsumption via SAT Solving
Jakob Rath, Armin Biere, Laura Kovács |
FMCAD | 3 |
| 2022 | Lemmaless Induction in Trace Logic
Ahmed Bhayat, Pamina Georgiou, Clemens Eisenhofer, Laura Kovács, Giles Reger |
CICM | 4 |
| 2022 | Solving Invariant Generation for Unsolvable Loops
Daneshvar Amrollahi, Ezio Bartocci, George Kenison, Laura Kovács, Marcel Moosbrugger, Miroslav Stankovic |
SAS | 4 |
| 2022 | Algebra-Based Reasoning for Loop SynthesisabstractProvably correct software is one of the key challenges of our software-driven society. Program synthesis—the task of constructing a program satisfying a given specification—is one strategy for achieving this. The result of this task is then a program that is correct by design. As in the domain of program verification, handling loops is one of the main ingredients to a successful synthesis procedure. We present an algorithm for synthesizing loops satisfying a given polynomial loop invariant. The class of loops we are considering can be modeled by a system of algebraic recurrence equations with constant coefficients, thus encoding program loops with affine operations among program variables. We turn the task of loop synthesis into a polynomial constraint problem by precisely characterizing the set of all loops satisfying the given invariant. We prove soundness of our approach, as well as its completeness with respect to an a priori fixed upper bound on the number of program variables. Our work has applications toward synthesizing loops satisfying a given polynomial loop invariant—program verification—as well as generating number sequences from algebraic relations. To understand viability of the methodology and heuristics for synthesizing loops, we implement and evaluate the method using the Absynth tool. Andreas Humenberger, Daneshvar Amrollahi, Nikolaj S. Bjørner, Laura Kovács |
Formal Aspects Comput. | 4 |
| 2022 | The probabilistic termination tool amberabstractWe describe the Amber tool for proving and refuting the termination of a class of probabilistic while-programs with polynomial arithmetic, in a fully automated manner. Amber combines martingale theory with properties of asymptotic bounding functions and implements relaxed versions of existing probabilistic termination proof rules to prove/disprove (positive) almost sure termination of probabilistic loops. Amber supports programs parametrized by symbolic constants and drawing from common probability distributions. Our experimental comparisons give practical evidence of Amber outperforming existing state-of-the-art tools. Marcel Moosbrugger, Ezio Bartocci, Joost-Pieter Katoen, Laura Kovács |
Formal Methods Syst. Des. | 4 |
| 2022 | This is the moment for probabilistic loopsabstractWe present a novel static analysis technique to derive higher moments for program variables for a large class of probabilistic loops with potentially uncountable state spaces. Our approach is fully automatic, meaning it does not rely on externally provided invariants or templates. We employ algebraic techniques based on linear recurrences and introduce program transformations to simplify probabilistic programs while preserving their statistical properties. We develop power reduction techniques to further simplify the polynomial arithmetic of probabilistic programs and define the theory of moment-computable probabilistic loops for which higher moments can precisely be computed. Our work has applications towards recovering probability distributions of random variables and computing tail probabilities. The empirical evaluation of our results demonstrates the applicability of our work on many challenging examples. Marcel Moosbrugger, Miroslav Stankovic, Ezio Bartocci, Laura Kovács |
Proc. ACM Program. Lang. | 4 |
| 2022 | Moment-based analysis of Bayesian network propertiesabstractWe use algebraic reasoning to translate Bayesian network (BN) properties into linear recurrence equations over statistical moments of BN variables. We show that this translation can always be done for various BNs, such as discrete, Gaussian, conditional linear Gaussian, and dynamic BNs. An important part of our work comes with representing BNs as while loops in probabilistic programs with polynomial assignments over random variables and parametrised distributions. We prove that closed-form summaries of probabilistic loops precisely characterize higher-order moments of BN variables. As such, we automatically solve several BN-related problems, including exact inference, sensitivity analysis, filtering, and computing the expected number of rejecting samples in sampling-based procedures. We evaluate our work on a number of BN benchmarks, using automated invariant generation within Prob-solvable loop analysis. This paper is an extended version of the “Analysis of Bayesian Networks via Prob-Solvable Loops” manuscript published at ICTAC 2020 [1]. Miroslav Stankovic, Ezio Bartocci, Laura Kovács |
Theor. Comput. Sci. | 3 |
| 2021 | Integer Induction in SaturationabstractAbstract Integers are ubiquitous in programming and therefore also in applications of program analysis and verification. Such applications often require some sort of inductive reasoning. In this paper we analyze the challenge of automating inductive reasoning with integers. We introduce inference rules for integer induction within the saturation framework of first-order theorem proving. We implemented these rules in the theorem prover Vampire and evaluated our work against other state-of-the-art theorem provers. Our results demonstrate the strength of our approach by solving new problems coming from program analysis and mathematical properties of integers. Petra Hozzová, Laura Kovács, Andrei Voronkov |
CADE | 2 |
| 2021 | Summing up Smart TransitionsabstractAbstract Some of the most significant high-level properties of currencies are the sums of certain account balances. Properties of such sums can ensure the integrity of currencies and transactions. For example, the sum of balances should not be changed by a transfer operation. Currencies manipulated by code present a verification challenge to mathematically prove their integrity by reasoning about computer programs that operate over them, e.g., in Solidity. The ability to reason about sums is essential: even the simplest ERC-20 token standard of the Ethereum community provides a way to access the total supply of balances. Unfortunately, reasoning about code written against this interface is non-trivial: the number of addresses is unbounded, and establishing global invariants like the preservation of the sum of the balances by operations like transfer requires higher-order reasoning. In particular, automated reasoners do not provide ways to specify summations of arbitrary length. In this paper, we present a generalization of first-order logic which can express the unbounded sum of balances. We prove the decidablity of one of our extensions and the undecidability of a slightly richer one. We introduce first-order encodings to automate reasoning over software transitions with summations. We demonstrate the applicability of our results by using SMT solvers and first-order provers for validating the correctness of common transitions in smart contracts. Neta Elad, Sophie Rain, Neil Immerman, Laura Kovács, Shmuel Sagiv |
CAV (1) | 4 |
| 2021 | Automated Termination Analysis of Polynomial Probabilistic ProgramsabstractAbstract The termination behavior of probabilistic programs depends on the outcomes of random assignments. Almost sure termination (AST) is concerned with the question whether a program terminates with probability one on all possible inputs. Positive almost sure termination (PAST) focuses on termination in a finite expected number of steps. This paper presents a fully automated approach to the termination analysis of probabilistic while-programs whose guards and expressions are polynomial expressions. As proving (positive) AST is undecidable in general, existing proof rules typically provide sufficient conditions. These conditions mostly involve constraints on supermartingales. We consider four proof rules from the literature and extend these with generalizations of existing proof rules for (P)AST. We automate the resulting set of proof rules by effectively computing asymptotic bounds on polynomials over the program variables. These bounds are used to decide the sufficient conditions – including the constraints on supermartingales – of a proof rule. Our software tool Amber can thus check AST, PAST, as well as their negations for a large class of polynomial probabilistic programs, while carrying out the termination reasoning fully with polynomial witnesses. Experimental results show the merits of our generalized proof rules and demonstrate that Amber can handle probabilistic programs that are out of reach for other state-of-the-art tools. Marcel Moosbrugger, Ezio Bartocci, Joost-Pieter Katoen, Laura Kovács |
ESOP | 4 |
| 2021 | The Probabilistic Termination Tool Amber
Marcel Moosbrugger, Ezio Bartocci, Joost-Pieter Katoen, Laura Kovács |
FM | 4 |
| 2021 | Induction with Recursive Definitions in SuperpositionabstractFunctional programs over inductively defined data types, such as lists, binary trees and naturals, can naturally be defined using recursive equations over recursive functions. In first-order logic, function definitions can be considered as universally quantified equalities. Verifying functional program properties therefore requires inductive reasoning with both theories and quantifiers. In this paper we propose new extensions and generalizations to automate induction with recursive functions in saturation-based first-order theorem proving, using the superposition calculus. Instead of using function definitions as first-order axioms, we introduced new simplification rules for treating function definitions as rewrite rules. We guide inductive reasoning and strengthen induction schema using recursively defined functions. Our experimental results show that handling recursive definitions in superposition reasoning significantly improves automated reasoning with induction. Márton Hajdú, Petra Hozzová, Laura Kovács, Andrei Voronkov |
FMCAD | 3 |
| 2021 | Inductive Benchmarks for Automated Reasoning
Márton Hajdú, Petra Hozzová, Laura Kovács, Johannes Schoisswohl, Andrei Voronkov |
CICM | 3 |
| 2021 | Automated Generation of Exam Sheets for Automated Deduction
Petra Hozzová, Laura Kovács, Jakob Rath |
CICM | 2 |
| 2021 | Algebra-Based Synthesis of Loops and Their Invariants (Invited Paper)
Andreas Humenberger, Laura Kovács |
VMCAI | 2 |
| 2020 | Trace Logic for Inductive Loop ReasoningabstractWe propose trace logic, an instance of many-sorted first-order logic, to automate the partial correctness verification of programs containing loops.Trace logic generalizes semantics of program locations and captures loop semantics by encoding properties at arbitrary timepoints and loop iterations.We guide and automate inductive loop reasoning in trace logic by using generic trace lemmas capturing inductive loop invariants.Our work is implemented in the RAPID framework, by extending and integrating superposition-based first-order reasoning within RAPID.We successfully used RAPID to prove correctness of many programs whose functional behavior are best summarized in the first-order theories of linear integer arithmetic, arrays and inductive data types. Pamina Georgiou, Bernhard Gleiss, Laura Kovács |
FMCAD | 3 |
| 2020 | Analysis of Bayesian Networks via Prob-Solvable Loops
Ezio Bartocci, Laura Kovács, Miroslav Stankovic |
ICTAC | 2 |
| 2020 | Algebra-Based Loop Synthesis
Andreas Humenberger, Nikolaj S. Bjørner, Laura Kovács |
IFM | 3 |
| 2020 | Induction with Generalization in Superposition Reasoning
Márton Hajdú, Petra Hozzová, Laura Kovács, Johannes Schoisswohl, Andrei Voronkov |
CICM | 3 |
| 2020 | Formalizing Graph Trail Properties in Isabelle/HOL
Laura Kovács, Hanna Lachnitt, Stefan Szeider |
CICM | 1 |
| 2020 | Mora - Automatic Generation of Moment-Based InvariantsabstractWe introduce Mora , an automated tool for generating invariants of probabilistic programs. Inputs to Mora are so-called Prob-solvable loops, that is probabilistic programs with polynomial assignments over random variables and parametrized distributions. Combining methods from symbolic computation and statistics, Mora computes invariant properties over higher-order moments of loop variables, expressing, for example, statistical properties, such as expected values and variances, over the value distribution of loop variables. Ezio Bartocci, Laura Kovács, Miroslav Stankovic |
TACAS (1) | 2 |
| 2019 | Automatic Generation of Moment-Based Invariants for Prob-Solvable Loops
Ezio Bartocci, Laura Kovács, Miroslav Stankovic |
ATVA | 2 |
| 2019 | Verifying Relational Properties using Trace LogicabstractWe present a logical framework for the verification of relational properties in imperative programs. Our frame-work reduces verification of relational properties of imperative programs to a validity problem in trace logic, an expressive instance of first-order predicate logic. Trace logic draws its expressiveness from its syntax, which allows expressing properties over computation traces. Its axiomatization supports fine-grained reasoning about intermediate steps in program execution, notably loop iterations. We present an algorithm to encode the semantics of programs as well as their relational properties in trace logic, and then show how first-order theorem proving can be used to reason about the resulting trace logic formulas. Our work is implemented in the tool RAPID and evaluated with examples coming from the security field. Gilles Barthe, Renate Eilers, Pamina Georgiou, Bernhard Gleiss, Laura Kovács, Matteo Maffei |
FMCAD | 5 |
| 2019 | Interactive Visualization of Saturation Attempts in Vampire
Bernhard Gleiss, Laura Kovács, Lena Schnedlitz |
IFM | 2 |
| 2018 | Loop Analysis by Quantification over IterationsabstractWe present a framework to analyze and verify programs containing loops by using a first-order language of so-called extended expressions. This language can express both functional and temporal properties of loops. We prove soundness and completeness of our framework and use our approach to automate the tasks of partial correctness verification, termination analysis and invariant generation. For doing so, we express the loop semantics as a set of first-order properties over extended expressions and use theorem provers and/or SMT solvers to reason about these properties. Our approach supports full first-order reasoning, including proving program properties with alternation of quantifiers. Our work is implemented in the tool QuIt and successfully evaluated on benchmarks coming from software verification. Bernhard Gleiss, Laura Kovács, Simon Robillard |
LPAR | 2 |
| 2018 | Aligator.jl - A Julia Package for Loop Invariant Generation
Andreas Humenberger, Maximilian Jaroschek, Laura Kovács |
CICM | 3 |
| 2018 | Invariant Generation for Multi-Path Loops with Polynomial Assignments
Andreas Humenberger, Maximilian Jaroschek, Laura Kovács |
VMCAI | 3 |
| 2017 | Splitting Proofs for Interpolation
Bernhard Gleiss, Laura Kovács, Martin Suda 0001 |
CADE | 2 |
| 2017 | First-Order Interpolation and Grey Areas of Proofs (Invited Talk)abstractInterpolation is an important technique in computer aided verification and static analysis of programs. In particular, interpolants extracted from so-called local proofs are used in invariant generation and bounded model checking. An interpolant extracted from such a proof is a boolean combination of formulas occurring in the proof. In this talk we first describe a technique of generating and optimizing interpolants based on transformations of what we call the “grey area” of local proofs. Local changes in proofs can change the extracted interpolant. Our method can describe properties of extracted interpolants obtained by such proof changes as a pseudo-boolean constraint. By optimizing solutions of this constraint we also improve the extracted interpolants. Unlike many other interpolation techniques, our technique is very general and applies to arbitrary theories. Our approach is implemented in the theorem prover Vampire and evaluated on a large number of benchmarks coming from first-order theorem proving and bounded model checking using logic with equality, uninterpreted functions and linear integer arithmetic. Our experiments demonstrate the power of the new techniques: for example, it is not unusual that our proof transformation gives more than a tenfold reduction in the size of interpolants. While local proofs admit efficient interpolation algorithms, standard complete proof systems, such as superposition, for theories having the interpolation property are not necessarily complete for local proofs. In this talk we therefore also investigate interpolant extraction from non-local proofs in the superposition calculus and prove a number of general results about interpolant extraction and complexity of extracted interpolants. In particular, we prove that the number of quantifier alternations in first-order interpolants of formulas without quantifier alternations is unbounded. This result has far-reaching consequences for using local proofs as a foundation for interpolating proof systems - any such proof system should deal with formulas of arbitrary quantifier complexity. Laura Kovács |
CSL | 1 |
| 2017 | Automated Generation of Non-Linear Loop Invariants Utilizing Hypergeometric SequencesabstractAnalyzing and reasoning about safety properties of software systems becomes an especially challenging task for programs with complex flow and, in particular, with loops or recursion. For such programs one needs additional information, for example in the form of loop invariants, expressing properties to hold at intermediate program points. In this paper we study program loops with non-trivial arithmetic, implementing addition and multiplication among numeric program variables. We present a new approach for automatically generating all polynomial invariants of a class of such programs. Our approach turns programs into linear ordinary recurrence equations and computes closed form solutions of these equations. These closed forms express the most precise inductive property, and hence invariant. We apply Gröbner basis computation to obtain a basis of the polynomial invariant ideal, yielding thus a finite representation of all polynomial invariants. Our work significantly extends the class of so-called P-solvable loops by handling multiplication with the loop counter variable. We implemented our method in the Mathematica package Aligator and showcase the practical use of our approach. Andreas Humenberger, Maximilian Jaroschek, Laura Kovács |
ISSAC | 3 |
| 2017 | First-Order Interpolation and Interpolating Proof SystemsabstractIt is known that one can extract Craig interpolants from so-called local proofs. An interpolant extracted from such a proof is a boolean combination of formulas occurring in the proof. However, standard complete proof systems, such as superposition, for theories having the interpolation property are not necessarily complete for local proofs: there are formulas having non-local proofs but no local proof. In this paper we investigate interpolant extraction from non-local refutations (proofs of contradiction) in the superposition calculus and prove a number of general results about interpolant extraction and complexity of extracted interpolants. In particular, we prove that the number of quantifier alternations in first-order interpolants of formulas without quantifier alternations is unbounded. This result has far-reaching consequences for using local proofs as a foundation for interpolating proof systems: any such proof system should deal with formulas of arbitrary quantifier complexity. To search for alternatives for interpolating proof systems, we consider several variations on interpolation and local proofs. Namely, we give an algorithm for building interpolants from resolution refutations in logic without equality and discuss additional constraints when this approach can be also used for logic with equality. We finally propose a new direction related to interpolation via local proofs in first-order theories. Laura Kovács, Andrei Voronkov |
LPAR | 1 |
| 2017 | Coming to terms with quantified reasoningabstractThe theory of finite term algebras provides a natural framework to describe the semantics of functional languages. The ability to efficiently reason about term algebras is essential to automate program analysis and verification for functional or imperative programs over inductively defined data types such as lists and trees. However, as the theory of finite term algebras is not finitely axiomatizable, reasoning about quantified properties over term algebras is challenging. Laura Kovács, Simon Robillard, Andrei Voronkov |
POPL | 1 |
| 2017 | Replacing conjectures by positive knowledge: Inferring proven precise worst-case execution time bounds using symbolic execution
Jens Knoop, Laura Kovács, Jakob Zwirchmayr |
J. Symb. Comput. | 2 |
| 2016 | The vampire and the FOOLabstractThis paper presents new features recently implemented in the theorem prover Vampire, namely support for first-order logic with a first class boolean sort (FOOL) and polymorphic arrays. In addition to having a first class boolean sort, FOOL also contains if-then-else and let-in expressions. We argue that presented extensions facilitate reasoning-based program analysis, both by increasing the expressivity of first-order reasoners and by gains in efficiency. Evgenii Kotelnikov, Laura Kovács, Giles Reger, Andrei Voronkov |
CPP | 2 |
| 2016 | Symbolic Computation and Automated Reasoning for Program Analysis
Laura Kovács |
IFM | 1 |
| 2015 | Segment Abstraction for Worst-Case Execution Time Analysis
Pavol Cerný, Thomas A. Henzinger, Laura Kovács, Arjun Radhakrishna, Jakob Zwirchmayr |
ESOP | 3 |
| 2015 | Reasoning About Loops Using Vampire in KeY
Wolfgang Ahrendt, Laura Kovács, Simon Robillard |
LPAR | 2 |
| 2015 | A First Class Boolean Sort in First-Order Theorem Proving and TPTP
Evgenii Kotelnikov, Laura Kovács, Andrei Voronkov |
CICM | 2 |
| 2015 | Special issue on symbolic computation in software science
Adel Bouhoula, Bruno Buchberger, Laura Kovács, Temur Kutsia |
J. Symb. Comput. | 3 |
| 2014 | Extensional Crisis and Proving Identity
Laura Kovács, Bernhard Kragl, Andrei Voronkov |
ATVA | 2 |
| 2013 | SmacC: A Retargetable Symbolic Execution Engine
Armin Biere, Jens Knoop, Laura Kovács, Jakob Zwirchmayr |
ATVA | 3 |
| 2013 | First-Order Theorem Proving and Vampire
Laura Kovács, Andrei Voronkov |
CAV | 1 |
| 2013 | Tree Interpolation in Vampire
Régis Blanc, Laura Kovács, Bernhard Kragl |
LPAR | 3 |
| 2012 | Vinter: A Vampire-Based Tool for Interpolation
Krystof Hoder, Andreas Holzer, Laura Kovács, Andrei Voronkov |
APLAS | 3 |
| 2012 | r-TuBound: Loop Bounds for WCET Analysis (Tool Paper)
Jens Knoop, Laura Kovács, Jakob Zwirchmayr |
LPAR | 2 |
| 2012 | Playing in the grey area of proofsabstractInterpolation is an important technique in verification and static analysis of programs. In particular, interpolants extracted from proofs of various properties are used in invariant generation and bounded model checking. A number of recent papers studies interpolation in various theories and also extraction of smaller interpolants from proofs. In particular, there are several algorithms for extracting of interpolants from so-called local proofs. The main contribution of this paper is a technique of minimising interpolants based on transformations of what we call the "grey area" of local proofs. Another contribution is a technique of transforming, under certain common conditions, arbitrary proofs into local ones. Krystof Hoder, Laura Kovács, Andrei Voronkov |
POPL | 2 |
| 2012 | Foreword
Nikolaj S. Bjørner, Laura Kovács |
J. Symb. Comput. | 2 |
| 2011 | On Transfinite Knuth-Bendix Orders
Laura Kovács, Georg Moser, Andrei Voronkov |
CADE | 1 |
| 2011 | Invariant Generation in Vampire
Krystof Hoder, Laura Kovács, Andrei Voronkov |
TACAS | 2 |
| 2010 | Invariant and Type Inference for Matrices
Thomas A. Henzinger, Thibaud Hottelier, Laura Kovács, Andrei Voronkov |
VMCAI | 3 |
| 2010 | Introduction
Martin Giese, Andrew Ireland, Laura Kovács |
J. Symb. Comput. | 3 |
| 2009 | Interpolation and Symbol Elimination
Laura Kovács, Andrei Voronkov |
CADE | 1 |
| 2009 | Finding Loop Invariants for Programs over Arrays Using a Theorem Prover
Laura Kovács, Andrei Voronkov |
FASE | 1 |
| 2008 | Valigator: A Verification Tool with Bound and Invariant Generation
Thomas A. Henzinger, Thibaud Hottelier, Laura Kovács |
LPAR | 3 |
| 2008 | Reasoning Algebraically About P-Solvable Loops
Laura Kovács |
TACAS | 1 |
| 2006 | Combining Logic and Algebraic Techniques for Program Verification in TheoremaabstractWe study and implement concrete methods for the verification of both imperative as well as functional programs in the frame of the Theorema system. The distinctive features of our approach consist in the automatic generation of loop invariants (by using combinatorial and algebraic techniques), and the generation of verification conditions as first-order logical formulae which do not refer to a specific model of computation. Laura Kovács, Nikolaj Popov, Tudor Jebelean |
ISoLA | 1 |