English
Related papers

Related papers: From formal proofs to mathematical proofs: a safe,…

200 papers

Compilers are a prime target for formal verification, since compiler bugs invalidate higher-level correctness guarantees, but compiler changes may become more labor-intensive to implement, if they must come with proof patches. One appealing…

Programming Languages · Computer Science 2025-03-12 Jason Gross , Andres Erbsen , Jade Philipoom , Rajashree Agrawal , Adam Chlipala

In this paper we consider the problem of certified static checking of module-like constructs of programming languages. We argue that there are algorithms and properties related to modules that can be defined and proven in an abstract way.…

Programming Languages · Computer Science 2017-06-20 Julia Belyakova

First-order optimization methods have attracted a lot of attention due to their practical success in many applications, including in machine learning. Obtaining convergence guarantees and worst-case performance certificates for first-order…

Optimization and Control · Mathematics 2023-10-04 Baptiste Goujaud , Aymeric Dieuleveut , Adrien Taylor

Floating point operations are fast, but require continuous effort on the part of the user in order to ensure that the results are correct. This burden can be shifted away from the user by providing a library of exact analysis in which the…

Logic in Computer Science · Computer Science 2011-12-20 Robbert Krebbers , Bas Spitters

The formalization of process algebras usually starts with a minimal core of operators and rules for its transition system, and then relax the system to improve its usability and ease the proofs. In the calculus of communicating systems…

Formal Languages and Automata Theory · Computer Science 2020-05-15 Clément Aubert , Ioana Cristescu

Highly automated theorem provers like Dafny allow users to prove simple properties with little effort, making it easy to quickly sketch proofs. The drawback is that such provers leave users with little control about the proof search,…

Programming Languages · Computer Science 2024-01-30 Son Ho , Clément Pit-Claudel

Safety-critical systems use redundant input units to improve their reliability and fault tolerance. A voting logic is then used to select a reliable input from the redundant sources. A fault detection and isolation rules help in selecting…

Logic in Computer Science · Computer Science 2025-09-29 Arif Ali AP , Jasine Babu , Deepa Sara John

We address the challenges of scaling verification efforts to match the increasing complexity and size of systems. We propose a research agenda aimed at building a performant proof engine by studying the asymptotic performance of proof…

Programming Languages · Computer Science 2024-08-16 Jason Gross , Andres Erbsen , Jade Philipoom , Rajashree Agrawal , Adam Chlipala

The Circularity Principle was successfully applied for developing a coinductive proving technique, known as circular coinduction. In this paper, we show that the same principle can be used to develop an inductive proving technique. A main…

Logic in Computer Science · Computer Science 2026-05-26 Dorel Lucanu , Grigore Rosu , Eugen Goriac , Georgiana Caltais

The paper describes the refinement algorithm for the Calculus of (Co)Inductive Constructions (CIC) implemented in the interactive theorem prover Matita. The refinement algorithm is in charge of giving a meaning to the terms, types and proof…

Logic in Computer Science · Computer Science 2015-07-01 Andrea Asperti , Wilmer Ricciotti , Claudio Sacerdoti Coen , Enrico Tassi

Sharing of notations and theories across an inheritance hierarchy of mathematical structures, e.g., groups and rings, is important for productivity when formalizing mathematics in proof assistants. The packed classes methodology is a…

Programming Languages · Computer Science 2020-09-22 Kazuhiko Sakaguchi

In mathematics, it is common practice to have several constructions for the same objects. Mathematicians will identify them modulo isomorphism and will not worry later on which construction they use, as theorems proved for one construction…

Logic in Computer Science · Computer Science 2015-07-10 Théo Zimmermann , Hugo Herbelin

Matching logic is a formalism for specifying, and reasoning about, mathematical structures, using patterns and pattern matching. Growing in popularity, it has been used to define many logical systems such as separation logic with recursive…

Logic in Computer Science · Computer Science 2022-09-22 Péter Bereczky , Xiaohong Chen , Dániel Horpácsi , Lucas Peña , Jan Tušil

In this project, a rather complete proof-theoretical formalization of Lambek Calculus (non-associative with arbitrary extensions) has been ported from Coq proof assistent to HOL4 theorem prover, with some improvements and new theorems.…

Computation and Language · Computer Science 2017-05-23 Chun Tian

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

Dependently typed languages such as Coq are used to specify and verify the full functional correctness of source programs. Type-preserving compilation can be used to preserve these specifications and proofs of correctness through…

Programming Languages · Computer Science 2018-08-14 William J. Bowman , Amal Ahmed

Cirquent calculus is a new proof-theoretic and semantic framework, whose main distinguishing feature is being based on circuits, as opposed to the more traditional approaches that deal with tree-like objects such as formulas or sequents.…

Logic in Computer Science · Computer Science 2011-04-15 Giorgi Japaridze

Different theorem provers tend to produce proof objects in different formats and this is especially the case for modal logics, where several deductive formalisms (and provers based on them) have been presented. This work falls within the…

Logic in Computer Science · Computer Science 2016-09-15 Tomer Libal , Marco Volpe

Computational content encoded into constructive type theory proofs can be used to make computing experiments over concrete data structures. In this paper, we explore this possibility when working in Coq with chain complexes of infinite type…

Logic in Computer Science · Computer Science 2010-04-29 César Domínguez , Julio Rubio

We report on an original formalization of measure and integration theory in the Coq proof assistant. We build the Lebesgue measure following a standard construction that had not yet been formalized in proof assistants based on dependent…

Logic in Computer Science · Computer Science 2023-12-12 Reynald Affeldt , Cyril Cohen