English
Related papers

Related papers: Translating proofs from an impredicative type syst…

200 papers

Proof assistants like Coq are increasingly popular to help mathematicians carry out proofs of the results they conjecture. However, formal proofs remain highly technical and are especially difficult to reuse. In this paper, we present a…

Logic in Computer Science · Computer Science 2024-01-23 Nicolas Magaud

There are multiple ways to formalise the metatheory of type theory. For some purposes, it is enough to consider specific models of a type theory, but sometimes it is necessary to refer to the syntax, for example in proofs of canonicity and…

Logic in Computer Science · Computer Science 2019-07-18 Ambrus Kaposi , András Kovács , Nicolai Kraus

Proust is a small Racket program offering rudimentary interactive assistance in the development of verified proofs for propositional and predicate logic. It is constructed in stages, some of which are done by students before using it to…

Programming Languages · Computer Science 2016-11-30 Prabhakar Ragde

In various provers and deductive verification tools, logical transformations are used extensively in order to reduce a proof task into a number of simpler tasks. Logical transformations are often part of the trusted base of such tools. In…

Logic in Computer Science · Computer Science 2021-07-07 Quentin Garchery

We introduce Prove-It, a Python-based general-purpose interactive theorem-proving assistant designed with the goal of making formal theorem proving as easy and natural as informal theorem proving (with moderate training). Prove-It uses a…

Logic in Computer Science · Computer Science 2020-12-29 Wayne M. Witzel , Warren D. Craft , Robert D. Carr , Joaquín E. Madrid Larrañaga

Mathematical theorems are human knowledge able to be accumulated in the form of symbolic representation, and proving theorems has been considered intelligent behavior. Based on the BHK interpretation and the Curry-Howard isomorphism, proof…

Neural and Evolutionary Computing · Computer Science 2016-04-18 Li-An Yang , Jui-Pin Liu , Chao-Hong Chen , Ying-ping Chen

This paper presents the Soda language for verifying multi-agent systems. Soda is a high-level functional and object-oriented language that supports the compilation of its code not only to Scala, a strongly statically typed high-level…

Programming Languages · Computer Science 2025-03-11 Julian Alfredo Mendez , Timotheus Kampik

It is well-known that the verification of partial correctness properties of imperative programs can be reduced to the satisfiability problem for constrained Horn clauses (CHCs). However, state-of-the-art solvers for CHCs (CHC solvers) based…

Logic in Computer Science · Computer Science 2018-06-29 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

The Agda Universal Algebra Library (agda-algebras) is a library of types and programs (theorems and proofs) we developed to formalize the foundations of universal algebra in dependent type theory using the Agda programming language and…

Logic in Computer Science · Computer Science 2021-12-02 William DeMeo , Jacques Carette

Recent work has proposed a promising approach to improving scalability of program synthesis by allowing the user to supply a syntactic template that constrains the space of potential programs. Unfortunately, creating templates often…

Programming Languages · Computer Science 2017-04-18 Jeevana Priya Inala , Nadia Polikarpova , Xiaokang Qiu , Benjamin S. Lerner , Armando Solar-Lezama

Despite extensive research both on the theoretical and practical fronts, formalising, reasoning about, and implementing languages with variable binding is still a daunting endeavour - repetitive boilerplate and the overly complicated…

Logic in Computer Science · Computer Science 2022-01-11 Marcelo Fiore , Dmitrij Szamozvancev

We implement a user-extensible ad hoc connection between the Lean proof assistant and the computer algebra system Mathematica. By reflecting the syntax of each system in the other and providing a flexible interface for extending…

Logic in Computer Science · Computer Science 2021-01-20 Robert Y. Lewis , Minchao Wu

We present a framework for the formal meta-theory of lambda calculi in first-order syntax, with two sorts of names, one to represent both free and bound variables, and the other for constants, and by using Stoughton's multiple…

Logic in Computer Science · Computer Science 2023-03-24 Sebastián Urciuoli

Using multisets, we develop novel techniques for mechanizing the proofs of the synthesis conjectures for list-sorting algorithms, and we demonstrate them in the Theorema system. We use the classical principle of extracting the algorithm as…

Logic in Computer Science · Computer Science 2019-09-05 Isabela Drămnesc , Tudor Jebelean

There is a recent interest for the verification of monadic programs using proof assistants. This line of research raises the question of the integration of monad transformers, a standard technique to combine monads. In this paper, we extend…

Logic in Computer Science · Computer Science 2021-07-20 Reynald Affeldt , David Nowak

We implement a user-extensible ad hoc connection between the Lean proof assistant and the computer algebra system Mathematica. By reflecting the syntax of each system in the other and providing a flexible interface for extending…

Logic in Computer Science · Computer Science 2017-12-27 Robert Y. Lewis

Universal induction is a crucial issue in AGI. Its practical applicability can be achieved by the choice of the reference machine or representation of algorithms agreed with the environment. This machine should be updatable for solving…

Artificial Intelligence · Computer Science 2013-06-04 Alexey Potapov , Sergey Rodionov

Type checking algorithms and theorem provers rely on unification algorithms. In presence of type families or higher-order logic, higher-order (pre)unification (HOU) is required. Many HOU algorithms are expressed in terms of…

Logic in Computer Science · Computer Science 2024-02-27 Nikolai Kudasov

We develop formal theories of conversion for Church-style lambda-terms with Pi-types in first-order syntax using one-sorted variables names and Stoughton's multiple substitutions. We then formalize the Pure Type Systems along some…

Logic in Computer Science · Computer Science 2025-10-15 Sebastián Urciuoli

In [4] we describe a variation of the classical permutation decoding algorithm that can be applied to any binary affine-invariant code; in particular, it can be applied to first-order Reed-Muller codes successfully. In this paper we study…

Information Theory · Computer Science 2025-09-16 José Joaquín Bernal , Juan Jacobo Simón