English
Related papers

Related papers: Concrete Semantics with Coq and CoqHammer

200 papers

The goal of this paper is to help mainstream programmers routinely use formal verification on their smart contracts by 1) proposing a new YAML-format for writing general-purpose formal specifications, 2) demonstrating how a formal…

Programming Languages · Computer Science 2019-12-09 Suhabe Bugrara

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

In the context of interactive theorem provers based on a dependent type theory, automation tactics (dedicated decision procedures, call of automated solvers, ...) are often limited to goals which are exactly in some expected logical…

Logic in Computer Science · Computer Science 2024-02-22 Valentin Blot , Denis Cousineau , Enzo Crance , Louise Dubois de Prisque , Chantal Keller , Assia Mahboubi , Pierre Vial

Type annotations are essential when printing terms in a way that preserves their meaning under reparsing and type inference. We study the problem of complete and minimal type annotations for rank-one polymorphic $\lambda$-calculus terms, as…

Logic in Computer Science · Computer Science 2026-04-20 Kevin Kappelmann , Maximilian Schäffeler , Lukas Stevens , Mohammad Abdulaziz , Andrei Popescu , Dmitriy Traytel

We describe a method for building composable and extensible verification procedures within the Coq proof assistant. Unlike traditional methods that rely on run-time generation and checking of proofs, we use verified-correct procedures with…

Programming Languages · Computer Science 2013-05-29 Gregory Malecha , Adam Chlipala , Thomas Braibant , Patrick Hulin , Edward Z. Yang

We introduce a method of verifying termination of logic programs with respect to concrete queries (instead of abstract query patterns). A necessary and sufficient condition is established and an algorithm for automatic verification is…

Artificial Intelligence · Computer Science 2007-05-23 Yi-Dong Shen , Li-Yan Yuan , Jia-Huai You

While Chain-of-Thought (CoT) prompting enhances the reasoning capabilities of large language models, the faithfulness of the generated rationales remains an open problem for model interpretability. We propose a novel theoretical lens for…

Artificial Intelligence · Computer Science 2025-10-02 Elija Perrier

While loops are present in virtually all imperative programming languages. They are important both for practical reasons (performing a number of iterations not known in advance) and theoretical reasons (achieving Turing completeness). In…

Programming Languages · Computer Science 2023-09-26 David Nowak , Vlad Rusu

Chain-of-Though (CoT) represents a common strategy for reasoning in Large Language Models (LLMs) by decomposing complex tasks into intermediate inference steps. However, explanations generated via CoT are susceptible to content biases that…

Computation and Language · Computer Science 2026-03-31 Leonardo Ranaldi , Marco Valentino , Andrè Freitas

Every database system contains a query optimizer that performs query rewrites. Unfortunately, developing query optimizers remains a highly challenging task. Part of the challenges comes from the intricacies and rich features of query…

Programming Languages · Computer Science 2016-08-09 Shumo Chu , Konstantin Weitz , Alvin Cheung , Dan Suciu

Verifying mathematical proofs is difficult, but can be automated with the assistance of a computer. Autoformalization is the task of automatically translating natural language mathematics into a formal language that can be verified by a…

Computation and Language · Computer Science 2024-07-11 Nilay Patel , Rahul Saha , Jeffrey Flanigan

This notes explains how standard algorithms that construct sorting networks have been formalised and proved correct in the Coq proof assistant using the SSReflect extension.

Data Structures and Algorithms · Computer Science 2022-03-04 Laurent Théry

We formally verify an abstract machine for a call-by-value lambda-calculus with de Bruijn terms, simple substitution, and small-step semantics. We follow a stepwise refinement approach starting with a naive stack machine with substitution.…

Logic in Computer Science · Computer Science 2019-01-03 Fabian Kunze , Gert Smolka , Yannick Forster

As large language model (LLM) assistants become increasingly integrated into enterprise workflows, their ability to generate accurate, semantically aligned, and executable outputs is critical. However, current conversational business…

Computation and Language · Computer Science 2026-01-08 Yan Sun , Ming Cai , Stanley Kok

We study transformational program logics for correctness and incorrectness that we extend to explicitly handle both termination and nontermination. We show that the logics are abstract interpretations of the right image transformer for a…

Logic in Computer Science · Computer Science 2023-11-27 Patrick Cousot

The rapid growth of research output in control engineering calls for new approaches to structure and formalize domain knowledge. This paper briefly describes an LLM-supported method for semi-automated generation of formal knowledge…

Artificial Intelligence · Computer Science 2025-11-05 Julius Fiedler , Carsten Knoll , Klaus Röbenack

Education in the practical applications of logic and proving such as the formal specification and verification of computer programs is substantially hampered by the fact that most time and effort that is invested in proving is actually…

Logic in Computer Science · Computer Science 2018-03-06 Wolfgang Schreiner , Alexander Brunhuemer , Christoph Fürst

Theory of choreographic languages typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of them lead to long reviewing processes, and occasionally to…

Logic in Computer Science · Computer Science 2021-02-05 Luís Cruz-Filipe , Fabrizio Montesi , Marco Peressotti

Large Language Models (LLM) are a new class of computation engines, "programmed" via prompt engineering. We are still learning how to best "program" these LLMs to help developers. We start with the intuition that developers tend to…

Software Engineering · Computer Science 2024-01-15 Toufique Ahmed , Kunal Suresh Pai , Premkumar Devanbu , Earl T. Barr

An efficient intuitionistic first-order prover integrated into Coq is useful to replay proofs found by external automated theorem provers. We propose a two-phase approach: An intuitionistic prover generates a certificate based on the matrix…

Logic in Computer Science · Computer Science 2016-06-21 Fabian Kunze