English
Related papers

Related papers: Total Haskell is Reasonable Coq

200 papers

The present dissertation introduces the research project on HOLMS (\textbf{HOL} Light Library for \textbf{M}odal \textbf{S}ystems), a growing modular framework for modal reasoning within the HOL Light proof assistant. To provide an…

Logic in Computer Science · Computer Science 2025-06-13 Antonella Bilotta

Functors with an instance of the Traversable type class can be thought of as data structures which permit a traversal of their elements. This has been made precise by the correspondence between traversable functors and finitary containers…

Logic in Computer Science · Computer Science 2022-07-21 Gershom Bazerman

Quantum Hoare logic (QHL) is a formal verification tool specifically designed to ensure the correctness of quantum programs. There has been an ongoing challenge to achieve a relatively complete satisfaction-based QHL with while-loop since…

Logic in Computer Science · Computer Science 2024-05-06 Xin Sun , Xingchi Su , Xiaoning Bian , Huiwen Wu

In order to increase user confidence, many automated theorem provers provide certificates that can be independently verified. In this paper, we report on our progress in developing a standalone tool for checking the correctness of…

Logic in Computer Science · Computer Science 2012-12-12 Frédéric Blanqui , Kim Quyen Ly

Mechanized verification of liveness properties for infinite programs with effects and nondeterminism is challenging. Existing temporal reasoning frameworks operate at the level of models such as traces and automata. Reasoning happens at a…

Programming Languages · Computer Science 2025-08-22 Eleftherios Ioannidis , Yannick Zakowski , Steve Zdancewic , Sebastian Angel

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

Scientific progress increasingly depends on data management, particularly to clean and curate data so that it can be systematically analyzed and reused. A wealth of techniques for managing and curating data (and its provenance) have been…

Programming Languages · Computer Science 2018-03-28 Jan Stolarek , James Cheney

This paper proposes a general semantic framework for verifying programs with arbitrary monadic side-effects using Dijkstra monads, which we define as monad-like structures indexed by a specification monad. We prove that any monad morphism…

Programming Languages · Computer Science 2019-06-27 Kenji Maillard , Danel Ahman , Robert Atkey , Guido Martinez , Catalin Hritcu , Exequiel Rivas , Éric Tanter

We extend a semantic verification framework for hybrid systems with the Isabelle/HOL proof assistant by an algebraic model for hybrid program stores, a shallow expression model for hybrid programs and their correctness specifications, and…

Logic in Computer Science · Computer Science 2021-06-14 Simon Foster , Jonathan Julián Huerta y Munive , Mario Gleirscher , Georg Struth

This article is concerned with the application of the program extraction technique to a new class of problems: the synthesis of decision procedures for the classical satisfiability problem that are correct by construction. To this end, we…

Logic in Computer Science · Computer Science 2015-07-01 Ulrich Berger , Andrew Lawrence , Fredrik Nordvall Forsberg , Monika Seisenberger

Being able to soundly estimate roundoff errors of finite-precision computations is important for many applications in embedded systems and scientific computing. Due to the discrepancy between continuous reals and discrete finite-precision…

Programming Languages · Computer Science 2018-08-24 Heiko Becker , Nikita Zyuzin , Raphael Monat , Eva Darulova , Magnus O. Myreen , Anthony Fox

In answer set programming (ASP), a problem at hand is solved by (i) writing a logic program whose answer sets correspond to the solutions of the problem, and by (ii) computing the answer sets of the program using an answer set solver as a…

Artificial Intelligence · Computer Science 2007-05-23 Tomi Janhunen , Emilia Oikarinen

Proofs in proof assistants like Rocq can be brittle, breaking easily in response to changes. To address this, recent work introduced an algorithm and tool in Rocq to automatically repair broken proofs in response to changes that correspond…

Programming Languages · Computer Science 2025-08-26 Cosmo Viola , Max Fan , Talia Ringer

Current approaches for formal verification of algorithms face important limitations. For specification, they cannot express algorithms naturally and concisely, especially for algorithms with states and flexible control flow. For…

Programming Languages · Computer Science 2025-05-01 Chengxi Yang , Shushu Wu , Qinxiang Cao

Hardware-software contracts are abstract specifications of a CPU's leakage behavior. They enable verifying the security of high-level programs against side-channel attacks without having to explicitly reason about the microarchitectural…

Programming Languages · Computer Science 2026-04-13 Arthur Correnson , Haoyi Zeng , Jana Hofmann

Obtaining good performance when programming heterogeneous computing platforms poses significant challenges for the programmer. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C…

Programming Languages · Computer Science 2016-03-11 Salvador Tamarit , Julio Mariño , Guillermo Vigueras , Manuel Carro

Building on our prior work on axiomatization of exact real computation by formalizing nondeterministic first-order partial computations over real and complex numbers in a constructive dependent type theory, we present a framework for…

Logic in Computer Science · Computer Science 2024-10-18 Michal Konečný , Sewon Park , Holger Thies

We describe a formalization of higher-order rewriting theory and formally prove that an AFS is strongly normalizing if it can be interpreted in a well-founded domain. To do so, we use Coq, which is a proof assistant based on dependent type…

Logic in Computer Science · Computer Science 2021-12-14 Deivid Vale , Niels van der Weide

We present several steps towards large formal mathematical wikis. The Coq proof assistant together with the CoRN repository are added to the pool of systems handled by the general wiki system described in \cite{DBLP:conf/aisc/UrbanARG10}. A…

Digital Libraries · Computer Science 2011-07-27 Jesse Alama , Kasper Brink , Lionel Mamane , Josef Urban

Expressive static typing disciplines are a powerful way to achieve high-quality software. However, the adoption cost of such techniques should not be under-estimated. Just like gradual typing allows for a smooth transition from…

Programming Languages · Computer Science 2015-08-25 Éric Tanter , Nicolas Tabareau