English
Related papers

Related papers: Certifying floating-point implementations using Ga…

200 papers

Numerical software, common in scientific computing or embedded systems, inevitably uses an approximation of the real arithmetic in which most algorithms are designed. In many domains, roundoff errors are not the only source of inaccuracy…

Programming Languages · Computer Science 2016-03-14 Eva Darulova , Viktor Kuncak

Formal verification tools are often developed by experts for experts; as a result, their usability by programmers with little formal methods experience may be severely limited. In this paper, we discuss this general phenomenon with…

Software Engineering · Computer Science 2015-08-20 Carlo A. Furia , Christopher M. Poskitt , Julian Tschannen

When proving the correctness of a method for slicing probabilistic programs, it was previously discovered by the authors that for a fixed point iteration to work one needs a non-standard starting point for the iteration. This paper presents…

Programming Languages · Computer Science 2024-12-11 Torben Amtoft , Anindya Banerjee

We present the Foundational Cryptography Framework (FCF) for developing and checking complete proofs of security for cryptographic schemes within a proof assistant. This is a general-purpose framework that is capable of modeling and…

Programming Languages · Computer Science 2014-10-15 Adam Petcher , Greg Morrisett

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

Floating-point program errors can lead to severe consequences, particularly in critical domains such as military applications. Only a small subset of inputs may induce substantial floating-point errors, prompting researchers to develop…

Software Engineering · Computer Science 2025-10-14 Youshuai Tan , Zhanwei Zhang , Zishuo Ding , Lianyu Zheng , Jinfu Chen , Weiyi Shang

In recent years, the interest in using proof assistants to formalise and reason about mathematics and programming languages has grown. Type-logical grammars, being closely related to type theories and systems used in functional programming,…

Logic in Computer Science · Computer Science 2017-09-06 Wen Kokke

Compression of floating-point data will play an important role in high-performance computing as data bandwidth and storage become dominant costs. Lossy compression of floating-point data is powerful, but theoretical results are needed to…

Numerical Analysis · Mathematics 2024-07-03 James Diffenderfer , Alyson Fox , Jeffrey Hittinger , Geoffrey Sanders , Peter Lindstrom

We present a method for verifying partial correctness properties of imperative programs that manipulate integers and arrays by using techniques based on the transformation of constraint logic programs (CLP). We use CLP as a metalanguage for…

Programming Languages · Computer Science 2013-09-23 Emanuele De Angelis , Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti

Proof assistants are getting more widespread use in research and industry to provide certified and independently checkable guarantees about theories, designs, systems and implementations. However, proof assistant implementations themselves…

Programming Languages · Computer Science 2021-07-19 Matthieu Sozeau

We present Proof-of-Perception (PoP), a tool-using framework that casts multimodal reasoning as an executable graph with explicit reliability guarantees. Each perception or logic node outputs a conformal set, yielding calibrated, stepwise…

Computer Vision and Pattern Recognition · Computer Science 2026-03-03 Arya Fayyazi , Haleh Akrami

Artificial intelligence (AI) tools based on large language models have acheived human-level performance on some computer programming tasks. We report several experiments using GPT-4 to generate computer code. These experiments demonstrate…

Artificial Intelligence · Computer Science 2023-04-27 Russell A Poldrack , Thomas Lu , Gašper Beguš

Auto-active verifiers provide a level of automation intermediate between fully automatic and interactive: users supply code with annotations as input while benefiting from a high level of automation in the back-end. This paper presents…

Logic in Computer Science · Computer Science 2015-09-01 Julian Tschannen , Carlo A. Furia , Martin Nordio , Nadia Polikarpova

The behaviour of neural network components must be proven correct before deployment in safety-critical systems. Unfortunately, existing neural network verification techniques cannot certify the absence of faults at the software level. In…

Software Engineering · Computer Science 2025-10-28 Edoardo Manino , Bruno Farias , Rafael Sá Menezes , Fedor Shmarov , Lucas C. Cordeiro

Carrying Code (ACC) has recently been proposed as a framework for mobile code safety in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails compliance with a…

Programming Languages · Computer Science 2010-10-22 Elvira Albert , Puri Arenas , Germán Puebla , Manuel Hermenegildo

For typical first-order logical theories, satisfying assignments have a straightforward finite representation that can directly serve as a certificate that a given assignment satisfies the given formula. For non-linear real arithmetic…

Logic in Computer Science · Computer Science 2025-03-07 Enrico Lipparini , Stefan Ratschan

Verifying the execution of a program is complicated and often limited by the inability to validate the code's correctness. It is a crucial aspect of scientific research, where it is needed to ensure the reproducibility and validity of…

Software Engineering · Computer Science 2025-02-12 Alex Wolf , Marco Edoardo Palma , Pasquale Salza , Harald C. Gall

In this article, we consider the general problem of checking the correctness of matrix multiplication. Given three $n \times n$ matrices $A$, $B$, and $C$, the goal is to verify that $A \times B=C$ without carrying out the computationally…

Data Structures and Algorithms · Computer Science 2017-05-31 Hao Ji , Michael Mascagni , Yaohang Li

This article describes the development and formal verification (proof of semantic preservation) of a compiler back-end from Cminor (a simple imperative intermediate language) to PowerPC assembly code, using the Coq proof assistant both for…

Logic in Computer Science · Computer Science 2009-11-14 Xavier Leroy

Formal methods provide systematic and rigorous techniques for software development. We strongly believe that they must be taught in computer science curricula. In this paper we present the pedagogic rationale and the concrete implementation…

Logic in Computer Science · Computer Science 2021-11-17 Salwa Souaf , Frédéric Loulergue
‹ Prev 1 3 4 5 6 7 10 Next ›