English
Related papers

Related papers: Separation Logic Modulo Theories

200 papers

Answer Set Programming Modulo Theories (ASPMT) is a new framework of tight integration of answer set programming (ASP) and satisfiability modulo theories (SMT). Similar to the relationship between first-order logic and SMT, it is based on a…

Artificial Intelligence · Computer Science 2025-07-08 Joohyung Lee , Yunsong Meng

Separation logic is a concise method for specifying programs that manipulate dynamically allocated storage. Partially inspired by separation logic, Implicit Dynamic Frames has recently been proposed, aiming at first-order tool support. In…

Programming Languages · Computer Science 2015-07-01 Matthew J. Parkinson , Alexander J. Summers

We introduce a new dynamic analysis technique to discover invariants in separation logic for heap-manipulating programs. First, we use a debugger to obtain rich program execution traces at locations of interest on sample inputs. These…

Programming Languages · Computer Science 2019-07-02 Ton Chanh Le , Guolong Zheng , ThanhVu Nguyen

Incorrectness Separation Logic (ISL) is a proof system designed to automate verification and detect bugs in programs manipulating heap memories. In this study, we extend ISL to support variable-length array predicates and pointer…

Logic in Computer Science · Computer Science 2025-03-04 Yeonseok Lee , Koji Nakazawa

Nowadays, numerous services based on large-scale distributed systems have been developed to boost the convenience of human life. On the other side, it becomes a significant challenge to ensure the correctness and properties of these systems…

Logic in Computer Science · Computer Science 2020-07-28 Yepeng Ding , Hiroyuki Sato

Symbolic and logic computation systems ranging from computer algebra systems to theorem provers are finding their way into science, technology, mathematics and engineering. But such systems rely on explicitly or implicitly represented…

Logic in Computer Science · Computer Science 2011-05-04 Florian Rabe , Michael Kohlhase

Separation logic is used to reason locally about stateful programs. State of the art program logics for higher-order store are usually built on top of untyped operational semantics, in part because traditional denotational methods have…

Programming Languages · Computer Science 2024-02-14 Frederik Lerbjerg Aagaard , Jonathan Sterling , Lars Birkedal

Foundational verification considers the functional correctness of programming languages with formalized semantics and uses proof assistants (e.g., Coq, Isabelle) to certify proofs. The need for verifying complex programs compels it to…

Programming Languages · Computer Science 2025-07-08 Qiyuan Xu , David Sanan , Zhe Hou , Xiaokun Luan , Conrad Watt , Yang Liu

Formally specifying, let alone verifying, properties of systems involving multiple programming languages is inherently challenging. We introduce Heterogeneous Dynamic Logic (HDL), a framework for combining reasoning principles from distinct…

Logic in Computer Science · Computer Science 2026-04-16 Samuel Teuber , Mattias Ulbrich , André Platzer , Bernhard Beckert

The SMT (Satisfiability Modulo Theories) theory of arrays is well-established and widely used, with variousdecision procedures and extensions developed for it. However, recent works suggest that developing tailoredreasoning for some…

Logic in Computer Science · Computer Science 2024-11-13 Hichem Rami Ait El Hara , François Bobot , Guillaume Bury

In this paper we study a Separation Logic of Relations (SLR) and compare its expressiveness to (Monadic)Second Order Logic (M)SO. SLR is based on the well-known Symbolic Heap fragment of Separation Logic, whose formulae are composed of…

Logic in Computer Science · Computer Science 2023-07-06 Radu Iosif , Florian Zuleger

Separation Logic with inductive definitions is a well-known approach for deductive verification of programs that manipulate dynamic data structures. Deciding verification conditions in this context is usually based on user-provided lemmas…

Logic in Computer Science · Computer Science 2015-07-21 Constantin Enea , Mihaela Sighireanu , Zhilin Wu

Large ontologies still pose serious challenges to state-of-the-art ontology alignment systems. In this paper we present an approach that combines a neural embedding model and logic-based modules to accurately divide an input ontology…

Artificial Intelligence · Computer Science 2020-03-12 Ernesto Jiménez-Ruiz , Asan Agibetov , Jiaoyan Chen , Matthias Samwald , Valerie Cross

Large language models (LLMs) have shown an impressive ability to perform tasks believed to require thought processes. When the model does not document an explicit thought process, it becomes difficult to understand the processes occurring…

Computation and Language · Computer Science 2024-06-21 Yuval Shalev , Amir Feder , Ariel Goldstein

Algebraic data types (ADTs) are a construct classically found in functional programming languages that capture data structures like enumerated types, lists, and trees. In recent years, interest in ADTs has increased. For example, popular…

Logic in Computer Science · Computer Science 2023-10-20 Amar Shah , Federico Mora , Sanjit A. Seshia

Constraint answer set programming is a promising research direction that integrates answer set programming with constraint processing. It is often informally related to the field of satisfiability modulo theories. Yet, the exact formal link…

Logic in Computer Science · Computer Science 2017-02-27 Yuliya Lierler , Benjamin Susman

Recent techniques that integrate \emph{solver layers} into Deep Neural Networks (DNNs) have shown promise in bridging a long-standing gap between inductive learning and symbolic reasoning techniques. In this paper we present a set of…

Machine Learning · Computer Science 2023-01-30 Matt Fredrikson , Kaiji Lu , Saranya Vijayakumar , Somesh Jha , Vijay Ganesh , Zifan Wang

Separation logics are a family of extensions of Hoare logic for reasoning about programs that mutate memory. These logics are "abstract" because they are independent of any particular concrete memory model. Their assertion languages, called…

Logic in Computer Science · Computer Science 2013-11-27 Zhe Hou , Ranald Clouston , Rajeev Gore , Alwen Tiu

Incorrectness Separation Logic (ISL) is a proof system that is tailored specifically to resolve problems of under-approximation in programs that manipulate heaps, and it primarily focuses on bug detection. This approach is different from…

Logic in Computer Science · Computer Science 2025-08-05 Yeonseok Lee , Koji Nakazawa

It is well known that, under certain conditions, it is possible to split logic programs under stable model semantics, i.e. to divide such a program into a number of different "levels", such that the models of the entire program can be…

Artificial Intelligence · Computer Science 2007-05-23 Joost Vennekens , David Gilis , Marc Denecker