English
Related papers

Related papers: A Relational Logic for Higher-Order Programs

200 papers

We investigate program equivalence for linear higher-order(sequential) languages endowed with primitives for computational effects. More specifically, we study operationally-based notions of program equivalence for a linear…

Programming Languages · Computer Science 2021-06-25 Ugo Dal Lago , Francesco Gavazzo

Program sensitivity, also known as Lipschitz continuity, describes how small changes in a program's input lead to bounded changes in the output. We propose an average notion of program sensitivity for probabilistic programs---expected…

Programming Languages · Computer Science 2017-11-10 Gilles Barthe , Thomas Espitau , Benjamin Grégoire , Justin Hsu , Pierre-Yves Strub

Expressive state-of-the-art separation logics rely on step-indexing to model semantically complex features and to support modular reasoning about imperative higher-order concurrent and distributed programs. Step-indexing comes, however,…

As large language model (LLM) based systems take on high-stakes roles in real-world decision-making, they must reconcile competing instructions from multiple sources (e.g., model developers, users, and tools) within a single prompt context.…

Computation and Language · Computer Science 2026-02-19 Zishuo Zheng , Vidhisha Balachandran , Chan Young Park , Faeze Brahman , Sachin Kumar

It has been observed that linearizability, the prevalent consistency condition for implementing concurrent objects, does not preserve some probability distributions. A stronger condition, called strong linearizability has been proposed, but…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-05-30 Hagit Attiya , Constantin Enea

We extend the simply-typed guarded $\lambda$-calculus with discrete probabilities and endow it with a program logic for reasoning about relational properties of guarded probabilistic computations. This provides a framework for programming…

Programming Languages · Computer Science 2018-02-28 Alejandro Aguirre , Gilles Barthe , Lars Birkedal , Aleš Bizjak , Marco Gaboardi , Deepak Garg

We describe an evaluation algorithm for relational Horn logic (RHL). RHL extends Datalog with quantification over sorts, existential quantification in conclusions and, crucially, the ability to infer equalities. These capabilities allow RHL…

Programming Languages · Computer Science 2023-02-14 Martin E. Bidlingmaier

We present Bluebell, a program logic for reasoning about probabilistic programs where unary and relational styles of reasoning come together to create new reasoning tools. Unary-style reasoning is very expressive and is powered by…

Logic in Computer Science · Computer Science 2024-12-16 Jialu Bao , Emanuele D'Osualdo , Azadeh Farzan

Types in logic programming have focused on conservative approximations of program semantics by regular types, on one hand, and on type systems based on a prescriptive semantics defined for typed programs, on the other. In this paper, we…

Logic in Computer Science · Computer Science 2019-09-19 João Barbosa , Mário Florido , Vítor Santos Costa

Large Language Models (LLMs) demonstrate transformative potential, yet their reasoning remains inconsistent and unreliable. Reinforcement learning (RL)-based fine-tuning is a key mechanism for improvement, but its effectiveness is…

Machine Learning · Computer Science 2026-02-11 Pei-Chi Pan , Yingbin Liang , Sen Lin

A general framework is proposed for integration of rules and external first order theories. It is based on the well-founded semantics of normal logic programs and inspired by ideas of Constraint Logic Programming (CLP) and constructive…

Logic in Computer Science · Computer Science 2010-12-08 W. Drabent , J. Maluszynski

This paper presents an example of formal reasoning about the semantics of a Prolog program of practical importance (the SAT solver of Howe and King). The program is treated as a definite clause logic program with added control. The logic…

Logic in Computer Science · Computer Science 2017-05-15 Włodzimierz Drabent

Self-composition provides a powerful theoretical approach to prove relational properties, i.e. properties relating several program executions, that has been applied to compare two runs of one or similar programs (in secure dataflow…

Software Engineering · Computer Science 2017-02-07 Lionel Blatter , Nikolai Kosmatov , Pascale Le Gall , Virgile Prevosto

The RISC Algorithm Language (RISCAL) is a language for the formal modeling of theories and algorithms. A RISCAL specification describes an infinite class of models each of which has finite size; this allows to fully automatically check in…

Logic in Computer Science · Computer Science 2019-04-02 Wolfgang Schreiner

We propose a purely extensional semantics for higher-order logic programming. In this semantics program predicates denote sets of ordered tuples, and two predicates are equal iff they are equal as sets. Moreover, every program has a unique…

Programming Languages · Computer Science 2011-06-20 A. Charalambidis , K. Handjopoulos , P. Rondogiannis , W. W. Wadge

We present a new approach to automated reasoning about higher-order programs by extending symbolic execution to use behavioral contracts as symbolic values, enabling symbolic approximation of higher-order behavior. Our approach is based on…

Programming Languages · Computer Science 2012-04-27 Sam Tobin-Hochstadt , David Van Horn

We present the architecture and the evaluation of a new system for recognizing textual entailment (RTE). In RTE we want to identify automatically the type of a logical relation between two input texts. In particular, we are interested in…

Computation and Language · Computer Science 2013-10-21 Andreas Wotzlaw , Ravi Coote

The logic of hereditary Harrop formulas (HH) has proven useful for specifying a wide range of formal systems. This logic includes a form of hypothetical judgment that leads to dynamically changing sets of assumptions and that is key to…

Logic in Computer Science · Computer Science 2013-08-06 Yuting Wang , Kaustuv Chaudhuri , Andrew Gacek , Gopalan Nadathur

Program verification tools are often implemented as front-end translations of an input program into an intermediate verification language (IVL) such as Boogie, GIL, Viper, or Why3. The resulting IVL program is then verified using an…

Programming Languages · Computer Science 2024-12-23 Thibault Dardinier , Michael Sammler , Gaurav Parthasarathy , Alexander J. Summers , Peter Müller

The growing complexity of log data in modern software systems has prompted the use of Large Language Models (LLMs) for automated log analysis. Current approaches typically rely on direct supervised fine-tuning (SFT) on log-label pairs.…