English
Related papers

Related papers: Kleene Algebra with Tests and Coq Tools for While …

200 papers

We apply the notion of quantum predicate proposed by D'Hondt and Panangaden to analyze a purely quantum language fragment which describes the quantum part of a future quantum computer in Knill's architecture. The denotational semantics,…

Programming Languages · Computer Science 2007-05-23 Yuan Feng , Runyao Duan , Zhengfeng Ji , Mingsheng Ying

Partial incorrectness logic (partial reverse Hoare logic) has recently been introduced as a new Hoare-style logic that over-approximates the weakest pre-conditions of a program and a post-condition. It is expected to verify systems where…

Logic in Computer Science · Computer Science 2025-03-03 Yukihiro Oda

We advocate a declarative approach to proving properties of logic programs. Total correctness can be separated into correctness, completeness and clean termination; the latter includes non-floundering. Only clean termination depends on the…

Logic in Computer Science · Computer Science 2011-10-25 W. Drabent , M. Milkowska

In the present paper, we introduce a multi-type calculus for the logic of measurable Kleene algebras, for which we prove soundness, completeness, conservativity, cut elimination and subformula property. Our proposal imports ideas and…

Logic · Mathematics 2018-05-22 Giuseppe Greco , Fei Liang , Alessandra Palmigiano

Formally verifying properties of programs that manipulate arrays in loops is computationally challenging. In this paper, we focus on a useful class of such programs, and present a novel property-driven verification method that first infers…

Software Engineering · Computer Science 2017-10-05 Supratik Chakraborty , Ashutosh Gupta , Divyesh Unadkat

We have developed an alternative approach to teaching computer science students how to prove. First, students are taught how to prove theorems with the Coq proof assistant. In a second, more difficult, step students will transfer their…

Logic in Computer Science · Computer Science 2018-03-06 Sebastian Böhne , Christoph Kreitz

We solve MIT's Linear Algebra 18.06 course and Columbia University's Computational Linear Algebra COMS3251 courses with perfect accuracy by interactive program synthesis. This surprisingly strong result is achieved by turning the course…

Machine Learning · Computer Science 2021-11-17 Iddo Drori , Nakul Verma

This book can be seen either as a text on theorem proving that uses techniques from general algebra, or else as a text on general algebra illustrated and made concrete by practical exercises in theorem proving. The book considers several…

Logic in Computer Science · Computer Science 2021-01-19 Joseph A. Goguen

We define the notion of a partially additive Kleene algebra, which is a Kleene algebra where the + operation need only be partially defined. These structures formalize a number of examples that cannot be handled directly by Kleene algebras.…

Logic in Computer Science · Computer Science 2007-05-23 Riccardo Pucella

Reactive programs combine traditional sequential programming constructs with primitives to allow communication with other concurrent agents. They are ubiquitous in modern applications, ranging from components systems and web services, to…

Logic in Computer Science · Computer Science 2021-04-19 Simon Foster , Kangfeng Ye , Ana Cavalcanti , Jim Woodcock

We present three projects concerned with applications of proof assistants in the area of programming language theory and mathematics. The first project is about a certified compilation technique for a domain-specific programming language…

Programming Languages · Computer Science 2018-11-29 Danil Annenkov

Correctness proofs for floating point programs are difficult to verify. To simplify the task, a similar, but less complex system, known as logarithmic arithmetic can be used. The Boyer-Moore Theorem Prover, NQTHM, mechanically verified the…

Logic in Computer Science · Computer Science 2024-11-21 Mark G. Arnold , Thomas A. Bailey , John R. Cowles

Tests are essential in Information Retrieval (IR), in order to evaluate the effectiveness of a query. Tests intended to exhibit the sense of words in con-text were undertaken and linked with Quantum Mechanics (QM). Poll tests were…

Information Retrieval · Computer Science 2012-07-19 Zeno Toffano , Bich-Lien Doan

We have developed a web-based pedagogical proof assistant, the Proof Tree Builder, that lets you apply rules upwards from the initial goal in sequent calculus and Hoare logic for a simple imperative language. We equipped our tool with a…

Logic in Computer Science · Computer Science 2023-03-13 Joomy Korkut

Bialgebrae provide an abstract framework encompassing the semantics of different kinds of computational models. In this paper we propose a bialgebraic approach to the semantics of logic programming. Our methodology is to study logic…

Logic in Computer Science · Computer Science 2015-07-01 Filippo Bonchi , Fabio Zanasi

Equational reasoning is one of the key features of pure functional languages such as Haskell. To date, however, such reasoning always took place externally to Haskell, either manually on paper, or mechanised in a theorem prover. This…

Programming Languages · Computer Science 2018-06-12 Niki Vazou , Joachim Breitner , Will Kunkel , David Van Horn , Graham Hutton

In this paper, we present a systematic way of deriving (1) languages of (generalised) regular expressions, and (2) sound and complete axiomatizations thereof, for a wide variety of systems. This generalizes both the results of Kleene (on…

Logic in Computer Science · Computer Science 2015-07-01 Alexandra Silva , Marcello Bonsangue , Jan Rutten

Given a universal Horn formula of Kleene algebra with hypotheses of the form r = 0, it is already known that we can efficiently construct an equation which is valid if and only if the Horn formula is valid. This is an example of…

Logic in Computer Science · Computer Science 2017-01-11 Christopher Hardin

We report on the development of an optimized and verified decision procedure for orthologic equalities and inequalities. This decision procedure is quadratic-time and is used as a sound, efficient and predictable approximation to classical…

Logic in Computer Science · Computer Science 2025-02-05 Simon Guilloud , Clément Pit-Claudel

The theory of the call-by-value lambda-calculus relies on weak evaluation and closed terms, that are natural hypotheses in the study of programming languages. To model proof assistants, however, strong evaluation and open terms are…

Logic in Computer Science · Computer Science 2017-02-02 Beniamino Accattoli , Giulio Guerrieri