English
Related papers

Related papers: Certification of Confluence Proofs using CeTA

200 papers

We present a tool, simplify-defun, that transforms the definition of a given function into a simplified definition of a new function, providing a proof checked by ACL2 that the old and new functions are equivalent. When appropriate it also…

Programming Languages · Computer Science 2017-05-04 Alessandro Coglio , Matt Kaufmann , Eric W. Smith

Refinement types turn typechecking into lightweight verification. The classic form of refinement type is the datasort refinement, in which datasorts identify subclasses of inductive datatypes. Existing type systems for datasort refinements…

Programming Languages · Computer Science 2020-11-17 Jana Dunfield

In this work, we present an approach towards constructing executable specifications of existing filesystems and verifying their functional properties in a theorem proving environment. We detail an application of this approach to the FAT32…

Logic in Computer Science · Computer Science 2018-10-11 Mihir Parang Mehta

[Context & motivation] Eliciting requirements that are detailed and logical enough to be amenable to formal verification is a difficult task. Multiple tools exist for requirements elicitation and some of these also support formalisation of…

Software Engineering · Computer Science 2025-06-18 Marie Farrell , Matt Luckcuck , Oisin Sheridan , Rosemary Monahan

Verification methods based on SAT, SMT, and Theorem Proving often rely on proofs of unsatisfiability as a powerful tool to extract information in order to reduce the overall effort. For example a proof may be traversed to identify a minimal…

Logic in Computer Science · Computer Science 2014-04-16 S. F. Rollini , R. Bruttomesso , N. Sharygina , A. Tsitovich

The first iteration of the proof format used by the SMT solver veriT was presented ten years ago at the first PxTP workshop. Since then the format has matured. veriT proofs are used within multiple applications, and other solvers generate…

Logic in Computer Science · Computer Science 2021-07-07 Hans-Jörg Schurr , Mathias Fleury , Haniel Barbosa , Pascal Fontaine

The recent extensive availability of "big data" platforms calls for a more widespread adoption by the formal verification community. In fact, formal verification requires high performance data processing software for extracting knowledge…

Software Engineering · Computer Science 2015-02-16 Carlo Bellettini , Matteo Camilli , Lorenzo Capra , Mattia Monga

Deductive verification has become a mature paradigm for the verification of industrial software. Applying deductive verification, however, requires that every function in the code base is annotated with a function contract specifying its…

Logic in Computer Science · Computer Science 2025-01-22 Jesper Amilon , Dilian Gurov , Christian Lidström , Mattias Nyberg , Gustav Ung , Ola Wingbrant

We propose a refinement to the well known, and widely used, proof-of-work scheme of zeroing a cryptographic hash. Our refinement allows multiple autonomous users to cooperate on the proof-of-work for their own transactions in order to bring…

Data Structures and Algorithms · Computer Science 2017-12-01 Wouter Kuijper

A barrier certificate can separate the state space of a con- sidered hybrid system (HS) into safe and unsafe parts ac- cording to the safety property to be verified. Therefore this notion has been widely used in the verification of HSs. A…

Systems and Control · Computer Science 2013-10-25 Liyun Dai , Ting Gan , Bican Xia , Naijun Zhan

Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may…

Programming Languages · Computer Science 2022-05-17 Colin S. Gordon , Sergey Matskevich

The modern Internet is highly dependent on trust communicated via certificates. However, in some cases, certificates become untrusted, and it is necessary to revoke them. In practice, the problem of secure revocation is still open.…

Cryptography and Security · Computer Science 2022-03-07 Nikita Korzhitskii , Matus Nemec , Niklas Carlsson

Formal verification plays a crucial role in making smart contracts safer, being able to find bugs or to guarantee their absence, as well as checking whether the business logic is correctly implemented. For Solidity, even though there…

Cryptography and Security · Computer Science 2025-11-18 Massimo Bartoletti , Silvia Crafa , Enrico Lipparini

Finite Automata (FAs) are fundamental components in the domains of programming languages. For instance, regular expressions, which are pivotal in languages such as JavaScript and Python, are frequently implemented using FAs. Finite…

Formal Languages and Automata Theory · Computer Science 2025-09-16 Shuanglong Kan , Anthony W. Lin

Theories over strings are among the most heavily researched logical theories in the SMT community in the past decade, owing to the error-prone nature of string manipulations, which often leads to security vulnerabilities (e.g. cross-site…

Programming Languages · Computer Science 2021-12-15 Shuanglong Kan , Anthony W. Lin , Philipp Rümmer , Micha Schrader

Software system certification presents itself with many challenges, including the necessity to certify the system at the level of functional requirements, code and binary levels, the need to chase down run-time errors, and the need for…

Software Engineering · Computer Science 2007-05-23 Eric Feron , Mardavij Roozbehani

In this paper, the idea of client verification in distributed systems is presented. The proposed solution presents a sample system where client verification through cloud resources using input signature is discussed. For different…

Neural and Evolutionary Computing · Computer Science 2016-01-28 Marcin Wozniak , Dawid Polap , Grzegorz Borowik , Christian Napoli

Proving secure compilation of partial programs typically requires back-translating an attack against the compiled program to an attack against the source program. To prove back-translation, one can syntactically translate the target…

Programming Languages · Computer Science 2022-06-06 Akram El-Korashy , Roberto Blanco , Jérémy Thibault , Adrien Durier , Deepak Garg , Catalin Hritcu

Low-end embedded devices are increasingly used in various smart applications and spaces. They are implemented under strict cost and energy budgets, using microcontroller units (MCUs) that lack security features available in general-purpose…

Cryptography and Security · Computer Science 2023-10-20 Adam Caulfield , Norrathep Rattanavipanon , Ivan De Oliveira Nunes

We propose to validate experimentally a theory of software certification that proceeds from assessment of confidence in fault-freeness (due to standards) to conservative prediction of failure-free operation.

Software Engineering · Computer Science 2014-04-29 John Rushby , Bev Littlewood , Lorenzo Strigini