English
Related papers

Related papers: Property Directed Self Composition

200 papers

We propose a new formal criterion for evaluating secure compilation schemes for unsafe languages, expressing end-to-end security guarantees for software components that may become compromised after encountering undefined behavior---for…

In programming, protocols are everywhere. Protocols describe the pattern of interaction (or communication) between software systems, for example, between a user-space program and the kernel or between a local application and an online…

Programming Languages · Computer Science 2022-11-08 Laura Bocchi , Dominic Orchard , A. Laura Voinea

Static verification relying on an automated theorem prover can be very slow and brittle: since static verification is undecidable, correct code may not pass a particular static verifier. In this work we use metaprogramming to generate code…

Programming Languages · Computer Science 2019-08-21 Isaac Oscar Gariano , Marco Servetto , Alex Potanin , Hrshikesh Arora

In a previous paper we have presented a CEGAR approach for the verification of parameterized systems with an arbitrary number of processes organized in an array or a ring. The technique is based on the iterative computation of parameterized…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-09-21 Javier Esparza , Mikhail Raskin , Christoph Welzel

We survey some results on the automatic verification of parameterized programs without identities. These are systems composed of arbitrarily many components, all of them running exactly the same finite-state program. We discuss the…

Logic in Computer Science · Computer Science 2014-05-09 Javier Esparza

Introduction: Computational modeling has rapidly advanced over the last decades, especially to predict molecular properties for chemistry, material science and drug design. Recently, machine learning techniques have emerged as a powerful…

We present a proof by induction algorithm, which combines k-induction with invariants to model check embedded C software with bounded and unbounded loops. The k-induction algorithm consists of three cases: in the base case, we aim to find a…

Logic in Computer Science · Computer Science 2015-09-09 Herbert Rocha , Hussama Ismail , Lucas Cordeiro , Raimundo Barreto

We study the problem of completely automatically verifying uninterpreted programs---programs that work over arbitrary data models that provide an interpretation for the constants, functions and relations the program uses. The verification…

Programming Languages · Computer Science 2020-08-27 Umang Mathur , P. Madhusudan , Mahesh Viswanathan

Temporal hyperproperties are system properties that relate multiple execution traces. For (finite-state) hardware, temporal hyperproperties are supported by model checking algorithms, and tools for general temporal logics like HyperLTL…

Logic in Computer Science · Computer Science 2022-08-26 Raven Beutner , Bernd Finkbeiner

Precondition inference is a non-trivial task with several applications in program analysis and verification. We present a novel iterative method for automatically deriving sufficient preconditions for safety and unsafety of programs which…

Logic in Computer Science · Computer Science 2018-11-19 Bishoksan Kafle , Graeme Gange , Peter Schachte , Harald Sondergaard , Peter J. Stuckey

Bisimulation metric is a robust behavioural semantics for probabilistic processes. Given any SOS specification of probabilistic processes, we provide a method to compute for each operator of the language its respective metric…

Programming Languages · Computer Science 2014-08-08 Daniel Gebler , Simone Tini

Protocols for tasks such as authentication, electronic voting, and secure multiparty computation ensure desirable security properties if agents follow their prescribed programs. However, if some agents deviate from their prescribed programs…

Cryptography and Security · Computer Science 2015-05-06 Anupam Datta , Deepak Garg , Dilsun Kaynar , Divya Sharma , Arunesh Sinha

This paper presents a new method for automatically generating numerical invariants for imperative programs. Given a program, our procedure computes a binary input/output relation on program states which over-approximates the behaviour of…

Programming Languages · Computer Science 2015-02-03 Azadeh Farzan , Zachary Kincaid

Security protocols are used in many of our daily-life applications, and our privacy largely depends on their design. Formal verification techniques have proved their usefulness to analyse these protocols, but they become so complex that…

Cryptography and Security · Computer Science 2014-10-21 Myrto Arapinis , Vincent Cheval , Stéphanie Delaune

This paper focuses on formally verifying invariant properties of control programs both at the model and code levels. The physical process is described by an uncertain discrete-time state-space system, where the dependence of the state-space…

Systems and Control · Electrical Eng. & Systems 2025-03-18 Elias Khalife , Pierre-Loic Garoche , Mazen Farhood

A hyperproperty relates executions of a program and is used to formalize security objectives such as confidentiality, non-interference, privacy, and anonymity. Formally, a hyperproperty is a collection of allowable sets of executions. A…

Logic in Computer Science · Computer Science 2023-01-30 Ali Bajwa , Minjian Zhang , Rohit Chadha , Mahesh Viswanathan

Recently, the k-induction algorithm has proven to be a successful approach for both finding bugs and proving correctness. However, since the algorithm is an incremental approach, it might waste resources trying to prove incorrect programs.…

Programming Languages · Computer Science 2018-01-23 Mikhail Y. R. Gadelha , Lucas C. Cordeiro , Denis A. Nicole

Proof by coupling is a classical technique for proving properties about pairs of randomized algorithms by carefully relating (or coupling) two probabilistic executions. In this paper, we show how to automatically construct such proofs for…

Programming Languages · Computer Science 2018-04-12 Aws Albarghouthi , Justin Hsu

Automated synthesis of reactive systems from specifications has been a topic of research for decades. Recently, a variety of approaches have been proposed to extend synthesis of reactive systems from proposi- tional specifications towards…

Software Engineering · Computer Science 2018-03-23 Andreas Katis , Grigory Fedyukovich , Huajun Guo , Andrew Gacek , John Backes , Arie Gurfinkel , Michael W. Whalen

Memory-safety issues and information leakage are known to be depressingly common. We consider the compositional static detection of these kinds of vulnerabilities in first-order C-like programs. Indeed the latter are relational hyper-safety…

Programming Languages · Computer Science 2023-08-22 Toby Murray , Pengbo Yan , Gidon Ernst