English
Related papers

Related papers: A Formally Specified Program Logic for Higher-Orde…

200 papers

We develop a denotational model for probabilistic and concurrent imperative programs, a class of programs with standard control flow via conditionals and while-loops, as well as probabilistic actions and parallel composition. Whereas…

Programming Languages · Computer Science 2025-06-10 Noam Zilberstein , Daniele Gorla , Alexandra Silva

We introduce a logical framework for the specification and verification of component-based systems, in which finitely many component instances are active, but the bound on their number is not known. Besides specifying and verifying…

Logic in Computer Science · Computer Science 2019-08-30 Marius Bozga , Radu Iosif , Joseph Sifakis

Extensions of Answer Set Programming with language constructs from temporal logics, such as temporal equilibrium logic over finite traces (TELf), provide an expressive computational framework for modeling dynamic applications. In this…

Artificial Intelligence · Computer Science 2024-01-23 Pedro Cabalar , Martín Diéguez , François Laferrière , Torsten Schaub

The problem of model checking procedural programs has fostered much research towards the definition of temporal logics for reasoning on context-free structures. The most notable of such results are temporal logics on Nested Words, such as…

Logic in Computer Science · Computer Science 2020-11-03 Michele Chiari , Dino Mandrioli , Matteo Pradella

Dependently typed lambda calculi such as the Edinburgh Logical Framework (LF) are a popular means for encoding rule-based specifications concerning formal syntactic objects. In these frameworks, relations over terms representing formal…

Logic in Computer Science · Computer Science 2013-11-01 Mary Southern , Gopalan Nadathur

Technical computing is a challenging application area for programming languages to address. This is evinced by the unusually large number of specialized languages in the area (e.g. MATLAB, R), and the complexity of common software stacks,…

Programming Languages · Computer Science 2018-08-13 Jeff Bezanson , Jake Bolewski , Jiahao Chen

Grounding navigational commands to linear temporal logic (LTL) leverages its unambiguous semantics for reasoning about long-horizon tasks and verifying the satisfaction of temporal constraints. Existing approaches require training data from…

Robotics · Computer Science 2023-10-19 Jason Xinyu Liu , Ziyi Yang , Ifrah Idrees , Sam Liang , Benjamin Schornstein , Stefanie Tellex , Ankit Shah

We define a new decidable logic for expressing and checking invariants of programs that manipulate dynamically-allocated objects via pointers and destructive pointer updates. The main feature of this logic is the ability to limit the…

Logic in Computer Science · Computer Science 2007-06-13 Greta Yorsh , Alexander Rabinovich , Mooly Sagiv , Antoine Meyer , Ahmed Bouajjani

Constraint-logic object-oriented programming, for example using Muli, facilitates the integrated development of business software that occasionally involves finding solutions to constraint-logic problems. The availability of object-oriented…

Programming Languages · Computer Science 2019-07-03 Jan C. Dageförde

Deductive verification techniques for C11 programs have advanced significantly in recent years with the development of operational semantics and associated logics for increasingly large fragments of C11. However, these semantics and logics…

Logic in Computer Science · Computer Science 2021-08-04 Daniel Wright , Mark Batty , Brijesh Dongol

Matrix Code gives imperative programming a mathematical semantics and heuristic power comparable in quality to functional and logic programming. A program in Matrix Code is developed incrementally from a specification in pre/post-condition…

Programming Languages · Computer Science 2013-02-26 M. H. van Emden

A circular program creates a data structure whose computation depends upon itself or refers to itself. The technique is used to implement the classic data structures circular and doubly-linked lists, threaded trees and queues, in a…

Programming Languages · Computer Science 2024-03-05 Lloyd Allison

Reasoning about program correctness has been a central topic in static analysis for many years, with Hoare logic (HL) playing an important role. The key notions in HL are partial and total correctness. Both require that program executions…

Logic in Computer Science · Computer Science 2025-02-21 Lena Verscht , Ānrán Wáng , Benjamin Lucien Kaminski

This paper aims to develop a verification method for procedural programs via a transformation into Logically Constrained Term Rewriting Systems (LCTRSs). To this end, we extend transformation methods based on integer TRSs to handle…

Logic in Computer Science · Computer Science 2025-09-01 Carsten Fuhs , Cynthia Kop , Naoki Nishida

Unintended failures during a computation are painful but frequent during software development. Failures due to external reasons (e.g., missing files, no permissions) can be caught by exception handlers. Programming failures, such as calling…

Programming Languages · Computer Science 2024-02-21 Michael Hanus

We show how to give a coherent semantics to programs that are well-specified in a version of separation logic for a language with higher types: idealized algol extended with heaps (but with immutable stack variables). In particular, we…

Logic in Computer Science · Computer Science 2017-01-11 Lars Birkedal , Noah Torp-Smith , Hongseok Yang

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

We present Pirouette, a language for typed higher-order functional choreographic programming. Pirouette offers programmers the ability to write a centralized functional program and compile it via endpoint projection into programs for each…

Programming Languages · Computer Science 2021-11-10 Andrew K. Hirsch , Deepak Garg

We investigate the possibility of a semantic account of the execution time (i.e. the number of \beta_v-steps leading to the normal form, if any) for the shuffling calculus, an extension of Plotkin's call-by-value {\lambda}-calculus. For…

Logic in Computer Science · Computer Science 2018-12-31 Giulio Guerrieri

{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