English
Related papers

Related papers: Formalizing Monoidal Categories and Actions for Sy…

200 papers

We propose an extension of pure type systems with an algebraic presentation of inductive and co-inductive type families with proper indices. This type theory supports coercions toward from smaller sorts to bigger sorts via explicit type…

Logic in Computer Science · Computer Science 2014-06-16 Hugo Herbelin , Arnaud Spiwack

In this paper, a monad-based denotational model is introduced and shown adequate for the Proto-Quipper family of calculi, themselves being idealized versions of the Quipper programming language. The use of a monadic approach allows us to…

Programming Languages · Computer Science 2025-12-01 Ken Sakayori , Andrea Colledan , Ugo Dal Lago

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

In functional programming, datatypes a la carte provide a convenient modular representation of recursive datatypes, based on their initial algebra semantics. Unfortunately it is highly challenging to implement this technique in proof…

Logic in Computer Science · Computer Science 2015-09-11 Paolo Torrini , Tom Schrijvers

interpreters are tools to compute approximations for behaviors of a program. These approximations can then be used for optimisation or for error detection. In this paper, we show how to describe an abstract interpreter using the type-theory…

Logic in Computer Science · Computer Science 2008-10-20 Yves Bertot

Adding rewriting to a proof assistant based on the Curry-Howard isomorphism, such as Coq, may greatly improve usability of the tool. Unfortunately adding an arbitrary set of rewrite rules may render the underlying formal system undecidable…

Logic in Computer Science · Computer Science 2015-07-01 Daria Walukiewicz-Chrzaszcz , Jacek Chrzaszcz

Context-free grammar simplification is a subject of high importance in computer language processing technology as well as in formal language theory. This paper presents a formalization, using the Coq proof assistant, of the fact that…

Formal Languages and Automata Theory · Computer Science 2015-10-19 Marcus V. M. Ramos , Ruy J. G. B. de Queiroz

In order to help students learn how to write mathematical proofs, we adapt the Coq proof assistant into an educational tool we call Waterproof. Like with other interactive theorem provers, students write out their proofs inside the software…

In this paper, we introduce a system called GamePad that can be used to explore the application of machine learning methods to theorem proving in the Coq proof assistant. Interactive theorem provers such as Coq enable users to construct…

Machine Learning · Computer Science 2018-12-24 Daniel Huang , Prafulla Dhariwal , Dawn Song , Ilya Sutskever

A type theory is presented that combines (intuitionistic) linear types with type dependency, thus properly generalising both intuitionistic dependent type theory and full linear logic. A syntax and complete categorical semantics are…

Logic in Computer Science · Computer Science 2026-05-07 Matthijs Vákár

Dependently typed proof assistant rely crucially on definitional equality, which relates types and terms that are automatically identified in the underlying type theory. This paper extends type theory with definitional functor laws,…

Programming Languages · Computer Science 2024-04-10 Théo Laurent , Meven Lennon-Bertrand , Kenji Maillard

We describe a new approach to automatically repairing broken proofs in the Coq proof assistant in response to changes in types. Our approach combines a configurable proof term transformation with a decompiler from proof terms to tactic…

Programming Languages · Computer Science 2021-05-13 Talia Ringer , RanDair Porter , Nathaniel Yazdani , John Leo , Dan Grossman

The syntax of an imperative language does not mention explicitly the state, while its denotational semantics has to mention it. In this paper we present a framework for the verification in Coq of properties of programs manipulating the…

Logic in Computer Science · Computer Science 2013-10-15 Jean-Guillaume Dumas , Dominique Duval , Burak Ekici , Damien Pous

Broadly speaking, there are two kinds of semantics-aware assistant systems for mathematics: proof assistants express the semantic in logic and emphasize deduction, and computer algebra systems express the semantics in programming languages…

Logic in Computer Science · Computer Science 2013-06-14 Michael Kohlhase , Felix Mance , Florian Rabe

Proof assistants play a dual role as programming languages and logical systems. As programming languages, proof assistants offer standard modularity mechanisms such as first-class functions, type polymorphism and modules. As logical…

Logic in Computer Science · Computer Science 2021-08-24 Kenji Maillard , Nicolas Margulies , Matthieu Sozeau , Nicolas Tabareau , Éric Tanter

Matthes and Uustalu (TCS 327(1-2):155-174, 2004) presented a categorical description of substitution systems capable of capturing syntax involving binding which is independent of whether the syntax is made up from least or greatest fixed…

Logic in Computer Science · Computer Science 2023-08-17 Benedikt Ahrens , Ralph Matthes

We present a Coq formalization of the Quantified Reflection Calculus with one modality, or $\mathsf{QRC}_1$. This is a decidable, strictly positive, and quantified modal logic previously studied for its applications in proof theory. The…

Logic in Computer Science · Computer Science 2023-12-20 Ana de Almeida Borges

One of the proposed solutions for improving the scalability of semantics of programming languages is Component-Based Semantics, introduced by Peter D. Mosses. It is expected that this framework can also be used effectively for modular meta…

Logic in Computer Science · Computer Science 2011-08-17 Ken Madlener , Sjaak Smetsers , Marko van Eekelen

This paper investigates the use of symmetric monoidal closed (SMC) structure for representing syntax with variable binding, in particular for languages with linear aspects. In our setting, one first specifies an SMC theory T, which may…

Logic in Computer Science · Computer Science 2009-05-27 Richard Garner , Tom Hirschowitz , Aurélien Pardon

We investigate here a new version of the Calculus of Inductive Constructions (CIC) on which the proof assistant Coq is based: the Calculus of Congruent Inductive Constructions, which truly extends CIC by building in arbitrary first-order…

Logic in Computer Science · Computer Science 2008-12-18 Frédéric Blanqui , Jean-Pierre Jouannaud , Pierre-Yves Strub