English
Related papers

Related papers: Uniqueness is Separation

200 papers

{log} (read 'setlog') was born as a Constraint Logic Programming (CLP) language where sets and binary relations are first-class citizens, thus fostering set programming. Internally, {log} is a constraint satisfiability solver implementing…

Logic in Computer Science · Computer Science 2026-03-13 Maximiliano Cristiá , Alfredo Capozucca , Gianfranco Rossi

Many dependability techniques expect certain behaviors from the underlying subsystems and fail in chaotic ways if these expectations are not met. Under expected circumstances, however, software tends to work quite well. This paper suggests…

Operating Systems · Computer Science 2007-05-23 George Candea

Logical atomicity has been widely accepted as a specification format for data structures in concurrent separation logic. While both lock-free and lock-based data structures have been verified against logically atomic specifications, most of…

Programming Languages · Computer Science 2023-04-28 Roshan Sharma , Shengyi Wang , Alexander Oey , Anastasiia Evdokimova , Lennart Beringer , William Mansky

In considering the reliability of numerical programs, it is normal to "limit our study to the semantics dealing with numerical precision" (Martel, 2005). On the other hand, there is a great deal of work on the reliability of programs that…

Symbolic Computation · Computer Science 2014-04-25 James H. Davenport , Russell Bradford , Matthew England , David Wilson

We present a novel verification technique to prove interesting properties of a class of array programs with a symbolic parameter N denoting the size of arrays. The technique relies on constructing two slightly different versions of the same…

Programming Languages · Computer Science 2021-07-05 Supratik Chakraborty , Ashutosh Gupta , Divyesh Unadkat

Requirements and code, in conventional software engineering wisdom, belong to entirely different worlds. Is it possible to unify these two worlds? A unified framework could help make software easier to change and reuse. To explore the…

Software Engineering · Computer Science 2016-02-18 Alexandr Naumchev , Bertrand Meyer , Victor Rivera

A plausible definition of "reasoning" could be "algebraically manipulating previously acquired knowledge in order to answer a new question". This definition covers first-order logical inference or probabilistic inference. It also includes…

Artificial Intelligence · Computer Science 2011-02-14 Leon Bottou

We introduce a framework for reasoning about the security of computer systems using modal logic. This framework is sufficiently expressive to capture a variety of known security properties, while also being intuitive and independent of…

Cryptography and Security · Computer Science 2023-09-19 Matvey Soloviev , Musard Balliu , Roberto Guanciale

One-time programs, computer programs which self-destruct after being run only once, are a powerful building block in cryptography and would allow for new forms of secure software distribution. However, ideal one-time programs have been…

Strong equivalence between knowledge bases ensures the possibility of replacing one with the other without affecting reasoning outcomes, in any given context. This makes it a crucial property in nonmonotonic formalisms. In particular, the…

Artificial Intelligence · Computer Science 2026-05-15 Giovanni Buraglio , Wolfgang Dvorak , Stefan Woltran

Since its beginnings in the 1940s, automated reasoning by computers has become a tool of ever growing importance in scientific research. So far, the rules underlying automated reasoning have mainly been formulated by humans, in the form of…

Computers and Society · Computer Science 2025-10-20 Konrad Hinsen

Loop invariants are fundamental to reasoning about programs with loops. They establish properties about a given loop's behavior. When they additionally are inductive, they become useful for the task of formal verification that seeks to…

A reliable technique for deductive program verification should be proven sound with respect to the semantics of the programming language. For each different language, the construction of a separate soundness proof is often a laborious…

Programming Languages · Computer Science 2021-08-05 Ximeng Li , Qianying Zhang , Guohui Wang , Zhiping Shi , Yong Guan

Separation logic's compositionality and local reasoning properties have led to significant advances in scalable static analysis. But program analysis has new challenges -- many programs display computational effects and, orthogonally,…

Logic in Computer Science · Computer Science 2024-03-15 Noam Zilberstein , Angelina Saliling , Alexandra Silva

We introduce two-sided type systems, which are sequent calculi for typing formulas. Two-sided type systems allow for hypothetical reasoning over the typing of compound program expressions, and the refutation of typing formulas. By…

Programming Languages · Computer Science 2023-10-23 Steven Ramsay , Charlie Walpole

Context. Variability-intensive programs (program families) appear in many application areas and for many reasons today. Different family members, called variants, are derived by switching statically configurable options (features) on and…

Programming Languages · Computer Science 2017-02-01 Alexandru Florin Iosif-Lazar , Jean Melo , Aleksandar S. Dimovski , Claus Brabrand , Andrzej Wasowski

Research in cybersecurity may seem reactive, specific, ephemeral, and indeed ineffective. Despite decades of innovation in defense, even the most critical software systems turn out to be vulnerable to attacks. Time and again. Offense and…

Cryptography and Security · Computer Science 2024-09-04 Marcel Böhme

Matching logic is a general formal framework for reasoning about a wide range of theories, with particular emphasis on programming language semantics. Notably, the intermediate language of the K semantics framework is an extension of…

Logic in Computer Science · Computer Science 2025-09-17 Ádám Kurucz , Péter Bereczky , Dániel Horpácsi

Verification of higher-order probabilistic programs is a challenging problem. We present a verification method that supports several quantitative properties of higher-order probabilistic programs. Usually, extending verification methods to…

Logic in Computer Science · Computer Science 2024-07-04 Satoshi Kura , Hiroshi Unno

In systems modelling, a 'system' typically comprises located resources relative to which processes execute. One important use of logic in informatics is in modelling such systems for the purpose of reasoning (perhaps automated) about their…

Logic in Computer Science · Computer Science 2024-12-18 Alexander V. Gheorghiu , Tao Gu , David J. Pym