English
Related papers

Related papers: PML 2 : Integrated Program Verification in ML

200 papers

This article examines two approaches to verification, one based on using a logic for expressing properties of a system, and one based on showing the system equivalent to a simpler system that obviously has whatever property is of interest.…

Logic in Computer Science · Computer Science 2007-05-23 Riccardo Pucella

We present three projects concerned with applications of proof assistants in the area of programming language theory and mathematics. The first project is about a certified compilation technique for a domain-specific programming language…

Programming Languages · Computer Science 2018-11-29 Danil Annenkov

When programmers want to prove strong program invariants, they are usually faced with a choice between using theorem provers and using traditional programming languages. The former requires them to provide program proofs, which, for many…

Programming Languages · Computer Science 2013-11-28 Jonathan Protzenko

In this paper, we present a linear and reversible programming language with inductives types and recursion. The semantics of the languages is based on pattern-matching; we show how ensuring syntactical exhaustivity and non-overlapping of…

Logic in Computer Science · Computer Science 2025-07-23 Kostia Chardonnet , Alexis Saurin , Benoît Valiron

Large Language Models (LLMs), combined with program-based solving techniques, are increasingly demonstrating proficiency in mathematical reasoning. For example, closed-source models such as OpenAI GPT-4 and Claude show excellent results in…

Computation and Language · Computer Science 2024-07-23 Vernon Toh Yan Han , Ratish Puduppully , Nancy F. Chen

We describe a prototype theorem prover, UTP2, developed to match the style of hand-written proof work in the Unifying Theories of Programming semantical framework. This is based on alphabetised predicates in a 2nd-order logic, with a strong…

Logic in Computer Science · Computer Science 2014-10-31 Andrew Butterfield

The Unified Modeling Language (UML) is a standard for modeling dynamic systems. UML behavioral state machines are used for modeling the dynamic behavior of object-oriented designs. The UML specification, maintained by the Object Management…

Software Engineering · Computer Science 2024-07-25 Étienne André , Shuang Liu , Yang Liu , Christine Choppy , Jun Sun , Jin Song Dong

ACL2 provides a systems programming capability that allows one to write code that uses and extends ACL2 inside of ACL2. However, for soundness reasons, ACL2 bars the unrestricted use of certain kinds of programming constructs, like…

Logic in Computer Science · Computer Science 2022-05-25 Andrew T. Walter , Panagiotis Manolios

The Message Passing Interface specification (MPI) defines a portable message-passing API used to program parallel computers. MPI programs manifest a number of challenges on what concerns correctness: sent and expected values in…

Programming Languages · Computer Science 2015-08-21 César Santos , Francisco Martins , Vasco Thudichum Vasconcelos

We present a new type system with support for proofs of programs in a call-by-value language with control operators. The proof mechanism relies on observational equivalence of (untyped) programs. It appears in two type constructors, which…

Logic in Computer Science · Computer Science 2016-04-08 Rodolphe Lepigre

To address the increasing size and complexity of modern software systems, compositional verification separates the verification of single components from the verification of their composition. In architecture-based verification, the former…

Software Engineering · Computer Science 2019-07-11 Diego Marmsoler , Genc Blakqori

Any traditional engineering field has metrics to rigorously assess the quality of their products. Engineers know that the output must satisfy the requirements, must comply with the production and market rules, and must be competitive.…

We introduce the language QML, a functional language for quantum computations on finite types. Its design is guided by its categorical semantics: QML programs are interpreted by morphisms in the category FQC of finite quantum computations,…

Quantum Physics · Physics 2008-05-06 Thorsten Altenkirch , Jonathan Grattage

Theory evaluation is a key problem in many areas: machine learning, scientific discovery, inverse engineering, decision making, software engineering, design, human sciences, etc. If we have a set of theories that are able to explain the…

Logic in Computer Science · Computer Science 2013-01-23 Héctor Castillo-Andreu

The requirements engineering (RE) phase is pivotal in developing high-quality software. Integrating advanced modelling techniques with large language models (LLMs) and formal verification in a logical style can significantly enhance this…

Software Engineering · Computer Science 2025-06-11 Radoslaw Klimek

This paper presents language techniques for applying memoization selectively. The techniques provide programmer control over equality, space usage, and identification of precise dependences so that memoization can be applied according to…

Programming Languages · Computer Science 2011-06-03 Umut A. Acar , Guy E. Blelloch , Robert Harper

We present a novel technique for combining statistical machine learning for proof-pattern recognition with symbolic methods for lemma discovery. The resulting tool, ACL2(ml), gathers proof statistics and uses statistical pattern-recognition…

Logic in Computer Science · Computer Science 2013-10-16 Jónathan Heras , Ekaterina Komendantskaya , Moa Johansson , Ewen Maclean

In the logic programming paradigm, a program is defined by a set of methods, each of which can be executed when specific conditions are met during the current state of an execution. The semantics of these programs can be elegantly…

Logic in Computer Science · Computer Science 2024-10-02 Matteo Acclavio , Roberto Maieli

Large Language Models (LLMs) often exhibit limited logical coherence, mapping premises to conclusions without adherence to explicit inference rules. We propose Proof-Carrying Reasoning with LLMs (PCRLLM), a framework that constrains…

Computation and Language · Computer Science 2025-11-12 Tangrui Li , Pei Wang , Hongzheng Wang Christian Hahm , Matteo Spatola , Justin Shi

Certainly, the success of the Unified Modeling Language (UML) as the de facto standard for modeling software systems does not imply closing the door on scientific exploration or experimentation with modeling in the field. Continuing studies…

Software Engineering · Computer Science 2021-02-08 Sabah Al-Fedaghi