English
Related papers

Related papers: An Expressive Trace Logic for Recursive Programs

200 papers

Program logics typically reason about an over-approximation of program behaviour to prove the absence of bugs. Recently, program logics have been proposed that instead prove the presence of bugs by means of under-approximate reasoning,…

Logic in Computer Science · Computer Science 2022-03-15 Christopher M. Poskitt

This thesis embarks on a comprehensive exploration of formal computational models that underlie typed programming languages. We focus on programming calculi, both functional (sequential) and concurrent, as they provide a compelling rigorous…

Logic in Computer Science · Computer Science 2024-08-16 Joseph William Neal Paulus

A program is usually represented as a word chain. It is exactly a word chain that appears as the lexical analyzer output and is parsed. The work shows that a program can be syntactically represented as an oriented word tree, that is a…

Programming Languages · Computer Science 2012-03-23 Alex Shkotin

We present an exact Bayesian inference method for inferring posterior distributions encoded by probabilistic programs featuring possibly unbounded loops. Our method is built on a denotational semantics represented by probability generating…

Programming Languages · Computer Science 2024-03-06 Lutz Klinkenberg , Christian Blumenthal , Mingshuai Chen , Darion Haase , Joost-Pieter Katoen

As computer systems grow ever larger and more complex, a crucial task in software development is for one person (the system expert) to communicate to another (the system novice) how a certain program works. This paper reports on the…

Software Engineering · Computer Science 2025-10-13 Matthew Sotoudeh

A key requirement on any well-behaved process language is its compositionality: behavioural equivalence of processes should be respected by the constructors of the language. Turi and Plotkin's abstract GSOS provides an elegant bialgebraic…

Logic in Computer Science · Computer Science 2026-05-19 Robin Jourde , Henning Urbat , Sergey Goncharov , Stelios Tsampas , Jonas Forster

We introduce a set of eight universal Rules of Inference by which computer programs with known properties (axioms) are transformed into new programs with known properties (theorems). Axioms are presented to formalize a segment of Number…

Logic in Computer Science · Computer Science 2007-05-23 Charlie Volkstorf

We provide a sound and relatively complete Hoare-like proof system for reasoning about partial correctness of recursive procedures in presence of local variables and the call-by-value parameter mechanism, and in which the correctness proofs…

Logic in Computer Science · Computer Science 2019-09-16 Krzysztof R. Apt , Frank S. de Boer

In order to design and implement tracers, one must decide what exactly to trace and how to produce this trace. On the one hand, trace designs are too often guided by implementation concerns and are not as useful as they should be. On the…

Software Engineering · Computer Science 2007-05-23 Mireille Ducasse , Ludovic Langevine , Pierre Deransart

Program verification is to develop the program's proof system, and to prove the proof system soundness with respect to a trusted operational semantics of the program. However, many practical program verifiers are not based on operational…

Logic in Computer Science · Computer Science 2021-02-09 ShangBei Wang

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

Strategy languages enable programmers to compose rewrite rules into strategies and control their application. This is useful in programming languages, e.g., for describing program transformations compositionally, but also in automated…

Programming Languages · Computer Science 2023-04-28 Rongxiao Fu , Ornela Dardha , Michel Steuwer

Copatterns give functional programs a flexible mechanism for responding to their context, and composition can greatly enhance their expressiveness. However, that same expressive power makes it harder to precisely specify the behavior of…

Programming Languages · Computer Science 2025-08-19 Paul Downen

Regular tree grammars and regular path expressions constitute core constructs widely used in programming languages and type systems. Nevertheless, there has been little research so far on frameworks for reasoning about path expressions…

Databases · Computer Science 2010-08-31 Everardo Barcenas , Pierre Geneves , Nabil Layaida , Alan Schmitt

This paper presents a language-independent proof system for reachability properties of programs written in non-deterministic (e.g., concurrent) languages, referred to as all-path reachability logic. It derives partial-correctness properties…

Programming Languages · Computer Science 2023-06-22 Andrei Stefanescu , Stefan Ciobaca , Radu Mereuta , Brandon Moore , Traian Florin Serbanuta , Grigore Rosu

Discrete mathematics is the foundation of computer science. It focuses on concepts and reasoning methods that are studied using math notations. It has long been argued that discrete math is better taught with programming, which takes…

Computers and Society · Computer Science 2021-10-07 Yanhong A. Liu , Matthew Castelllana

Logic languages based on the theory of rational, possibly infinite, trees have much appeal in that rational trees allow for faster unification (due to the safe omission of the occurs-check) and increased expressivity (cyclic terms can…

Programming Languages · Computer Science 2007-05-23 Roberto Bagnara , Roberta Gori , Patricia M. Hill , Enea Zaffanella

This paper is concerned with the expressivity and denotational semantics of a functional higher-order reversible programming language based on Theseus. In this language, pattern-matching is used to ensure the reversibility of functions. We…

Logic in Computer Science · Computer Science 2024-10-10 Kostia Chardonnet , Louis Lemonnier , Benoît Valiron

This paper proposes a modal typing system that enables us to handle self-referential formulae, including ones with negative self-references, which on one hand, would introduce a logical contradiction, namely Russell's paradox, in the…

Logic in Computer Science · Computer Science 2017-03-30 Hiroshi Nakano

We present a program synthesis method based on unfold/fold transformation rules which can be used for deriving terminating definite logic programs from formulas of the Weak Monadic Second Order theory of one successor (WS1S). This synthesis…

Programming Languages · Computer Science 2007-05-23 F. Fioravanti , A. Pettorossi , M. Proietti