English
Related papers

Related papers: While Loops in Coq

200 papers

There are many techniques and tools for termination of C programs, but up to now they were not very powerful for termination proofs of programs whose termination depends on recursive data structures like lists. We present the first approach…

Logic in Computer Science · Computer Science 2023-07-21 Jera Hensel , Jürgen Giesl

We present the linear first-order intermediate language IL for verified compilers. IL is a functional language with calls to a nondeterministic environment. We give IL terms a second, imperative semantic interpretation and obtain a register…

Programming Languages · Computer Science 2015-06-05 Sigurd Schneider , Gert Smolka , Sebastian Hack

We present a language extension for parallel quantum programming to (1) remove ambiguities concerning parallelism in current quantum programming languages and (2) facilitate space-time tradeoff investigations in quantum computing. While the…

Formal proof checkers such as Coq are capable of validating proofs of correction of algorithms for finite field arithmetics but they require extensive training from potential users. The delayed solution of a triangular system over a finite…

Symbolic Computation · Computer Science 2008-07-09 Sylvie Boldo , Marc Daumas , Pascal Giorgi

The substitution lemma is a renowned theorem within the realm of lambda-calculus theory and concerns the interactional behaviour of the metasubstitution operation. In this work, we augment the lambda-calculus's grammar with an uninterpreted…

Logic in Computer Science · Computer Science 2023-09-26 Maria J. D. Lima , Flávio L. C. de Moura

I formalize important theorems about classical propositional logic in the proof assistant Coq. The main theorems I prove are (1) the soundness and completeness of natural deduction calculus, (2) the equivalence between natural deduction…

Logic · Mathematics 2015-04-01 Floris van Doorn

We report on the development of an optimized and verified decision procedure for orthologic equalities and inequalities. This decision procedure is quadratic-time and is used as a sound, efficient and predictable approximation to classical…

Logic in Computer Science · Computer Science 2025-02-05 Simon Guilloud , Clément Pit-Claudel

In search for a foundational framework for reasoning about observable behavior of programs that may not terminate, we have previously devised a trace-based big-step semantics for While. In this semantics, both traces and evaluation…

Logic in Computer Science · Computer Science 2019-07-16 Keiko Nakata , Tarmo Uustalu

MapReduce frameworks are widely used for the implementation of distributed algorithms. However, translating imperative algorithms into these frameworks requires significant structural changes to the algorithm. As the costs of running faulty…

Logic in Computer Science · Computer Science 2018-02-07 Bernhard Beckert , Timo Bingmann , Moritz Kiefer , Peter Sanders , Mattias Ulbrich , Alexander Weigl

We implement extraction of Coq programs to functional languages based on MetaCoq's certified erasure. We extend the MetaCoq erasure output language with typing information and use it as an intermediate representation, which we call…

Programming Languages · Computer Science 2021-08-21 Danil Annenkov , Mikkel Milo , Jakob Botsch Nielsen , Bas Spitters

In the realm of formal theorem proving, the Coq proof assistant stands out for its rigorous approach to verifying mathematical assertions and software correctness. Despite the advances in artificial intelligence and machine learning, the…

Artificial Intelligence · Computer Science 2024-04-03 Andreas Florath

The problem of determining whether a probabilistic program terminates almost surely (i.e.~with probability one) is undecidable, and actually $\Pi^0_2$-complete. For this reason, a growing literature has explored classes of programs for…

Logic in Computer Science · Computer Science 2026-05-01 Ugo Dal Lago , Guido Fiorillo , Paolo Pistone

Detecting non-termination is crucial for ensuring program correctness and security, such as preventing denial-of-service attacks. While termination analysis has been studied for many years, existing methods have limited scalability and are…

Software Engineering · Computer Science 2023-12-07 Yao Zhang , Xiaofei Xie , Yi Li , Sen Chen , Cen Zhang , Xiaohong Li

As software systems increase in size and complexity dramatically, ensuring their correctness, security, and reliability becomes an increasingly formidable challenge. Despite significant advancements in verification techniques and tools,…

This document describes the implementation in SML of the LoopW language, an imperative language with higher-order procedural variables and non-local jumps equiped with a program logic. It includes the user manual along with some…

Logic in Computer Science · Computer Science 2010-01-02 Emmanuel Polonowski

Hoare logic provides a syntax-oriented method to reason about program correctness and has been proven effective in the verification of classical and probabilistic programs. Existing proposals for quantum Hoare logic either lack completeness…

Logic in Computer Science · Computer Science 2022-06-29 Yuan Feng , Mingsheng Ying

Contemporary proof assistants such as Coq require that recursive functions be terminating and corecursive functions be productive to maintain logical consistency of their type theories, and some ensure these properties using syntactic…

Programming Languages · Computer Science 2023-01-26 Jonathan Chan , Yufeng Li , William J. Bowman

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

Partial correctness of imperative or functional programming divides in logic programming into two notions. Correctness means that all answers of the program are compatible with the specification. Completeness means that the program produces…

Logic in Computer Science · Computer Science 2025-08-26 Włodzimierz Drabent

This Survey provides an overview of techniques in termination analysis for programs with numerical variables and transitions defined by linear constraints. This subarea of program analysis is challenging due to the existence of undecidable…

Programming Languages · Computer Science 2026-01-27 Amir M. Ben-Amram , Samir Genaim , Joël Ouaknine , James Worrell
‹ Prev 1 4 5 6 7 8 10 Next ›