English
Related papers

Related papers: Model Checking C Programs with Loops via k-Inducti…

200 papers

The automatic generation of loop invariants is a fundamental challenge in software verification. While this task is undecidable in general, it is decidable for certain restricted classes of programs. This work focuses on invariant…

Computational Complexity · Computer Science 2024-11-14 Rida Ait El Manssour , George Kenison , Mahsa Shirmohammadi , Anton Varonka

Checking for Non-Termination (NT) of a given program P, i.e., determining if P has at least one non-terminating run, is an undecidable problem that continues to garner significant research attention. While unintended NT is common in…

Software Engineering · Computer Science 2024-09-23 Ravindra Metta , Hrishikesh Karmarkar , Kumar Madhukar , R Venkatesh , Supratik Chakraborty , Samarjit Chakraborty

Loop invariants are properties of a program loop that hold before and after each iteration of the loop. They are often employed to verify programs and ensure that algorithms consistently produce correct results during execution.…

Symbolic Computation · Computer Science 2024-05-16 Erdenebayar Bayarmagnai , Fatemeh Mohammadi , Rémi Prébet

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 combine…

Logic in Computer Science · Computer Science 2023-06-22 Makai Mann , Ahmed Irfan , Alberto Griggio , Oded Padon , Clark Barrett

Mathematical induction is a fundamental tool in computer science and mathematics. Henkin initiated the study of formalization of mathematical induction restricted to the setting when the base case B is set to singleton set containing 0 and…

Logic in Computer Science · Computer Science 2020-08-17 A. Dileep , Kuldeep S. Meel , Ammar F. Sabili

Checking the soundness of cyclic induction reasoning for first-order logic with inductive definitions (FOLID) is decidable but the standard checking method is based on an exponential complement operation for B\"uchi automata. Recently, we…

Logic in Computer Science · Computer Science 2021-09-09 Sorin Stratulat

A representation invariant is a property that holds of all values of abstract type produced by a module. Representation invariants play important roles in software engineering and program verification. In this paper, we develop a…

Programming Languages · Computer Science 2020-03-30 Anders Miltner , Saswat Padhi , Todd Millstein , David Walker

In recent years, advanced model-based and data-driven control methods are unlocking the potential of complex robotics systems, and we can expect this trend to continue at an exponential rate in the near future. However, ensuring safety with…

Robotics · Computer Science 2024-08-29 Gianni Lunardi , Asia La Rocca , Matteo Saveriano , Andrea Del Prete

In this paper, we consider the problem of invariant set computation for black-box switched linear systems using merely a finite set of observations of system trajectories. In particular, this paper focuses on polyhedral invariant sets. We…

Systems and Control · Electrical Eng. & Systems 2020-12-18 Zheming Wang , Raphaël M. Jungers

The safety of infinite state systems can be checked by a backward reachability procedure. For certain classes of systems, it is possible to prove the termination of the procedure and hence conclude the decidability of the safety problem.…

Logic in Computer Science · Computer Science 2015-07-01 Silvio Ghilardi , Silvio Ranise

Infinite-state systems such as distributed protocols are challenging to verify using interactive theorem provers or automatic verification tools. Of these techniques, deductive verification is highly expressive but requires the user to…

Programming Languages · Computer Science 2019-05-21 Yotam M. Y. Feldman , James R. Wilcox , Sharon Shoham , Mooly Sagiv

Loop invariants play a very important role in proving correctness of programs. In this paper, we address the problem of generating invariants of polynomial loop programs. We present a new approach, for generating polynomial equation…

Symbolic Computation · Computer Science 2015-03-19 Bin Wu , Liyong Shen , Min Wu , Zhengfeng Yang , Zhenbing Zeng

We propose an automated verification technique for hypersafety properties, which express sets of valid interrelations between multiple finite runs of a program. The key observation is that constructing a proof for a small representative set…

Programming Languages · Computer Science 2019-05-23 Azadeh Farzan , Anthony Vandikas

This paper provides an exponential stability result for the adaptive anti-unwinding attitude tracking control problem of a rigid body with uncertain but constant inertia parameters, without requiring the satisfaction of persistent…

Systems and Control · Electrical Eng. & Systems 2021-08-24 Xiaodong Shao , Qinglei Hu , Daochun Li , Yang Shi , Bowen Yi

We propose an automated method for computing inductive invariants applied to check deadlock-freedom for parametric component-based systems. The method generalizes the approach for computing structural trap invariants from bounded to…

Logic in Computer Science · Computer Science 2019-02-18 Marius Bozga , Radu Iosif , Joseph Sifakis

The discovery of inductive invariants lies at the heart of static program verification. Presently, many automatic solutions to inductive invariant generation are inflexible, only applicable to certain classes of programs, or unpredictable.…

Software Engineering · Computer Science 2017-06-16 Adam Betts , Nathan Chong , Pantazis Deligiannis , Alastair F. Donaldson , Jeroen Ketema

Great advances in program analysis would be enabled if it were possible to derive the function of a program from inputs to outputs (or from initial states to final states, depending on how we model program semantics). Efforts to do so have…

Logic in Computer Science · Computer Science 2023-10-10 Wided Ghardallou , Hessamaldin Mohammadi , Elijah Brick , Ali Mili

We propose a framework for synthesizing inductive invariants for incomplete verification engines, which soundly reduce logical problems in undecidable theories to decidable theories. Our framework is based on the counter-example guided…

Programming Languages · Computer Science 2018-01-15 Daniel Neider , Pranav Garg , P. Madhusudan , Shambwaditya Saha , Daejun Park

We present a method for identifying groups of test examples -- slices -- on which a model under-performs, a task now known as slice discovery. We formalize coherence -- a requirement that erroneous predictions, within a slice, should be…

Machine Learning · Computer Science 2023-12-11 Fulton Wang , Julius Adebayo , Sarah Tan , Diego Garcia-Olano , Narine Kokhlikyan

Property-directed reachability (PDR) is a SAT/SMT-based reachability algorithm that incrementally constructs inductive invariants. After it was successfully applied to hardware model checking, several adaptations to software model checking…

Software Engineering · Computer Science 2020-02-25 Dirk Beyer , Matthias Dangl