English
Related papers

Related papers: Verifying Relational Properties using Trace Logic

200 papers

We consider the problem of automatically verifying programs which manipulate arbitrary data structures. Our specification language is expressive, contains a notion of \emph{separation}, and thus enables a precise specification of…

Programming Languages · Computer Science 2017-11-16 Duc-Hiep Chu , Joxan Jaffar

We propose the first framework for defining relational program logics for arbitrary monadic effects. The framework is embedded within a relational dependent type theory and is highly expressive. At the semantic level, we provide an…

Programming Languages · Computer Science 2019-11-22 Kenji Maillard , Catalin Hritcu , Exequiel Rivas , Antoine Van Muylder

Relational properties describe relationships that hold over multiple executions of one or more programs, such as functional equivalence. Conventional approaches for automatically verifying such properties typically rely on syntax-based,…

Programming Languages · Computer Science 2019-07-10 Qi Zhou , David Heath , William Harris

We give a relational and a weakest precondition semantics for "knowledge-based programs", i.e., programs that restrict observability of variables so as to richly express changes in the knowledge of agents who can or cannot observe said…

Logic in Computer Science · Computer Science 2022-07-07 Francesco Belardinelli , Ioana Boureanu , Vadim Malvone , Solofomampionona Fortunat Rajaona

Motivated by old and new applications, we investigate Datalog as a language for sequence databases. We reconsider classical features of Datalog programs, such as negation, recursion, intermediate predicates, and relations of higher arities.…

Databases · Computer Science 2022-06-15 Heba Aamer , Jan Hidders , Jan Paredaens , Jan Van den Bussche

Information-flow policies prescribe which information is available to a given user or subsystem. We study the problem of specifying such properties in reactive systems, which may require dynamic changes in information-flow restrictions…

Logic in Computer Science · Computer Science 2021-05-06 Ezio Bartocci , Thomas Ferrère , Thomas A. Henzinger , Dejan Nickovic , Ana Oliveira da Costa

Relational verification encompasses research directions such as reasoning about data abstraction, reasoning about security and privacy, secure compilation, and functional specificaton of tensor programs, among others. Several relational…

Logic in Computer Science · Computer Science 2025-09-08 Ramana Nagasamudram , Anindya Banerjee , David A. Naumann

Dynamic logic is a powerful approach to reasoning about programs and their executions, obtained by extending classical logic with modalities that can express program executions as formulas. However, the use of dynamic logic in the setting…

Logic in Computer Science · Computer Science 2026-04-14 Matteo Acclavio , Fabrizio Montesi , Marco Peressotti

The Logic Programming through Prolog has been widely used for supply persistence in many systems that need store knowledge. Some implementations of Prolog Programming Language used for supply persistence have bidirectional interfaces with…

Programming Languages · Computer Science 2017-05-02 José E. Zalacain Llanes

Hyperproperties are properties of computational systems that require more than one trace to evaluate, e.g., many information-flow security and concurrency requirements. Where a trace property defines a set of traces, a hyperproperty defines…

Logic in Computer Science · Computer Science 2021-04-30 Jan Baumeister , Norine Coenen , Borzoo Bonakdarpour , Bernd Finkbeiner , Cesar Sanchez

We study monitoring of linear-time arithmetic properties against finite traces generated by an unknown dynamic system. The monitoring state is determined by considering at once the trace prefix seen so far, and all its possible…

Logic in Computer Science · Computer Science 2022-12-01 Paolo Felli , Marco Montali , Fabio Patrizi , Sarah Winkler

Automated theorem proving in first-order logic is an active research area which is successfully supported by machine learning. While there have been various proposals for encoding logical formulas into numerical vectors -- from simple…

Artificial Intelligence · Computer Science 2020-03-17 Ibrahim Abdelaziz , Veronika Thost , Maxwell Crouse , Achille Fokoue

Pre-Requirement Specification traceability is the activity of capturing relations between requirements and their sources, in particular user needs. Requirements are formal technical specifications in the solution space; needs are natural…

Software Engineering · Computer Science 2007-05-23 Ramya Ravichandar , James D. Arthur , Manuel Pérez-Quiñones

Cryptographic protocols aim at securing communications over insecure networks such as the Internet, where dishonest users may listen to communications and interfere with them. A secure communication has a different meaning depending on the…

Cryptography and Security · Computer Science 2016-11-10 Stéphanie Delaune , Lucca Hirschi

Although they differ in the functionality they offer, low-level systems exhibit certain patterns of design and utilization of computing resources. In this paper, we argue the position that modalities, in the sense of modal logic, should be…

Logic in Computer Science · Computer Science 2025-09-30 Ismail Kuru , Colin S. Gordon

Automated verification has become an essential part in the security evaluation of cryptographic protocols. In this context privacy-type properties are often modelled by indistinguishability statements, expressed as behavioural equivalences…

Cryptography and Security · Computer Science 2024-08-07 Vincent Cheval , Steve Kremer , Itsaka Rakotonirina

The existence of trace links between artifacts of the software development life cycle can improve the efficiency of many activities during software development, maintenance and operations. Unfortunately, the creation and maintenance of…

Software Engineering · Computer Science 2023-07-18 Christof Tinnes

We present a type-theoretic framework for reasoning about incorrectness in functional programs that interact with effectful, opaque library APIs. Our approach centers on traces -- temporally-ordered sequences of library API invocations --…

Programming Languages · Computer Science 2025-09-03 Yongwei Yuan , Zhe Zhou , Julia Belyakova , Benjamin Delaware , Suresh Jagannathan

Program completion is a translation from the language of logic programs into the language of first-order theories. Its original definition has been extended to programs that include integer arithmetic, accept input, and distinguish between…

Logic in Computer Science · Computer Science 2023-12-27 Jorge Fandinno , Vladimir Lifschitz , Nathan Temple

This paper describes a procedure that system developers can follow to translate typical mathematical representations of linearized control systems into logic theories. These theories are then used to verify system requirements and find…

Logic in Computer Science · Computer Science 2021-08-09 Andrea Domenici , Cinzia Bernardeschi