English
Related papers

Related papers: A Versatile, Sound Tool for Simplifying Definition…

200 papers

Dafny is a verification-aware programming language that comes with a compiler and static program verifier. However, neither the compiler nor the verifier is proved correct; in fact, soundness bugs have been found in both tools. This paper…

Programming Languages · Computer Science 2025-12-08 Daniel Nezamabadi , Magnus O. Myreen , Yong Kiam Tan

Real-life conjectures do not come with instructions saying whether they they should be proven or, instead, refuted. Yet, as we now know, in either case the final argument produced had better be not just convincing but actually verifiable in…

Computers and Society · Computer Science 2015-07-21 João Marcos

OCaml is particularly well-fitted for formal verification. On one hand, it is a multi-paradigm language with a well-defined semantics, allowing one to write clean, concise, type-safe, and efficient code. On the other hand, it is a language…

Logic in Computer Science · Computer Science 2021-09-07 Mário Pereira , António Ravara

We present a tool for modelling and reasoning with knowledge from various diverse (and possibly conflicting) viewpoints. The theoretical underpinnings are provided by enhancing base logics by standpoints according to a recently introduced…

Artificial Intelligence · Computer Science 2023-05-02 Florian Emmrich , Lucía Gómez Álvarez , Hannes Strass

Fact verification based on structured data is challenging as it requires models to understand both natural language and symbolic operations performed over tables. Although pre-trained language models have demonstrated a strong capability in…

Computation and Language · Computer Science 2021-09-24 Xiaoyu Yang , Xiaodan Zhu

Frama-C is a software analysis framework that provides a common infrastructure and a common behavioral specification language to plugins that implement various static and dynamic analyses of C programs. Most plugins do not support…

Programming Languages · Computer Science 2017-08-25 Allan Blanchard , Frédéric Loulergue , Nikolai Kosmatov

Our goal is to study the feasibility of porting termination analysis techniques developed for one programming paradigm to another paradigm. In this paper, we show how to adapt termination analysis techniques based on polynomial…

Programming Languages · Computer Science 2009-12-23 Manh Thang Nguyen , Danny De Schreye , Jürgen Giesl , Peter Schneider-Kamp

The proofs first generated by automated theorem provers are far from optimal by any measure of simplicity. In this paper I describe a technique for simplifying automated proofs. Hopefully this discussion will stimulate interest in the…

Logic in Computer Science · Computer Science 2021-01-19 Michael Kinyon

For those of us who generally live in the world of syntax, semantic proof techniques such as reducibility, realizability or logical relations seem somewhat magical despite -- or perhaps due to -- their seemingly unreasonable effectiveness.…

Programming Languages · Computer Science 2020-07-28 Pierre-Évariste Dagand , Lionel Rieg , Gabriel Scherer

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

To refactor already working code while keeping reliability, compatibility and perhaps security, we can borrow ideas from micropass/nanopass compilers. By treating the procedure of software refactoring as composing code transformations, and…

Software Engineering · Computer Science 2023-08-15 Yu Liu

The paper proposes a theoretical approach of the debugging of constraint programs based on a notion of explanation tree. The proposed approach is an attempt to adapt algorithmic debugging to constraint programming. In this theoretical…

Software Engineering · Computer Science 2007-05-23 Gerard Ferrand , Willy Lesaint , Alexandre Tessier

Reuse of data in new contexts beyond the purposes for which it was originally collected has contributed to technological innovation and reducing the consent burden on data subjects. One of the legal mechanisms that makes such reuse possible…

Computers and Society · Computer Science 2023-09-06 Asia J. Biega

In this paper, we identify a fragment of second-order logic with restricted quantification that is expressive enough to capture numerous static analysis problems (e.g. safety proving, bug finding, termination and non-termination proving,…

Logic in Computer Science · Computer Science 2015-09-01 Cristina David , Daniel Kroening , Matt Lewis

Python is a high-level interpreted language that has become an industry standard in a wide variety of applications. In this paper, we take a first step towards using ACL2s to reason about Python code by developing an embedding of a subset…

Programming Languages · Computer Science 2025-07-28 Samuel Xifaras , Panagiotis Manolios , Andrew T. Walter , William Robertson

Set functions are a feature of functional logic programming to encapsulate all results of a non-deterministic computation in a single data structure. Given a function $f$ of a functional logic program written in Curry, we describe a…

Programming Languages · Computer Science 2018-08-23 Sergio Antoy , Michael Hanus , Finn Teegen

We introduce a simple functional language foetus (lambda calculus with tuples, constructors and pattern matching) supplied with a termination checker. This checker tries to find a well-founded structural order on the parameters on the given…

Programming Languages · Computer Science 2024-07-11 Andreas Abel

The goal of this lecture is to show how modern theorem provers---in this case, the Coq proof assistant---can be used to mechanize the specification of programming languages and their semantics, and to reason over individual programs and…

Programming Languages · Computer Science 2010-10-28 Xavier Leroy

Interactive proof assistants make it possible for ordinary mathematicians to write definitions and theorems in a formal proof language, like a programming language, so that a computer can parse them and check them against the rules of a…

History and Overview · Mathematics 2024-11-20 Jeremy Avigad , Johan Commelin , Heather Macbeth , Adam Topaz

Sentence function is an important linguistic feature referring to a user's purpose in uttering a specific sentence. The use of sentence function has shown promising results to improve the performance of conversation models. However, there…

Computation and Language · Computer Science 2019-11-25 Wei Bi , Jun Gao , Xiaojiang Liu , Shuming Shi