English
Related papers

Related papers: A Proof Assistant Based Formalisation of Core Erla…

200 papers

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

Polymorphism in programming languages enables code reuse. Here, we show that polymorphism has broad applicability far beyond computations for technical computing: parallelism in distributed computing, presentation of visualizations of…

Programming Languages · Computer Science 2014-11-07 Jiahao Chen , Alan Edelman

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

Computer Algebra systems are widely spread because of some of their remarkable features such as their ease of use and performance. Nonetheless, this focus on performance sometimes leads to unwanted consequences: algorithms and computations…

Logic in Computer Science · Computer Science 2014-01-27 Jesús Aransay , Jose Divasón

Autoformalization aims to convert informal mathematical proofs into machine-verifiable formats, bridging the gap between natural and formal languages. However, ensuring semantic alignment between the informal and formalized statements…

Computation and Language · Computer Science 2024-10-15 Jianqiao Lu , Yingjia Wan , Yinya Huang , Jing Xiong , Zhengying Liu , Zhijiang Guo

Reliable verification of proofs remains a bottleneck for training and evaluating AI systems on hard mathematical reasoning. Fully formal proofs, in languages like Lean, are easy to verify because they are unambiguous and modular. Most…

Logic in Computer Science · Computer Science 2026-05-21 Slim Barkallah , Luke Bailey , Kaiyue Wen , Mohammed Abouzaid , Tengyu Ma

Formally verifying properties of software code has been a highly desirable task, especially with the emergence of LLM-generated code. In the same vein, they provide an interesting avenue for the exploration of formal verification and…

Artificial Intelligence · Computer Science 2025-10-02 Balaji Rao , William Eiers , Carlo Lipizzi

Formal software specification is known to enable early error detection and explicit invariants, yet it has seen limited industrial adoption due to its high notation overhead and the expertise required to use traditional formal languages.…

Software Engineering · Computer Science 2026-01-16 Antonio Abu Nassar , Eitan Farchi

Autoformalization has emerged as a term referring to the automation of formalization - specifically, the formalization of mathematics using interactive theorem provers (proof assistants). Its rapid development has been driven by progress in…

Artificial Intelligence · Computer Science 2025-12-16 Agnieszka Mensfelt , David Tena Cucala , Santiago Franco , Angeliki Koutsoukou-Argyraki , Vince Trencsenyi , Kostas Stathis

Artificial intelligence systems have achieved remarkable capability in natural language processing, perception and decision-making tasks. However, their behaviour often remains opaque and difficult to verify, limiting their applicability in…

Software Engineering · Computer Science 2026-04-15 Arshad Beg , Diarmuid O'Donoghue , Rosemary Monahan

This paper is a brief introduction to our recently initiated project named VERIFAI: Traceability and verification of natural language requirements. The project addresses the challenges in the traceability and verification of formal…

Software Engineering · Computer Science 2025-06-13 Arshad Beg , Diarmuid O'Donoghue , Rosemary Monahan

Multiple logic-based reconstructions of conceptual data modelling languages such as EER, UML Class Diagrams, and ORM exist. They mainly cover various fragments of the languages and none are formalised such that the logic applies…

Artificial Intelligence · Computer Science 2019-09-20 Pablo Rubén Fillottrani , C. Maria Keet

Application of formal models provides many benefits for the software and system development, however, the learning curve of formal languages could be a critical factor for an industrial project. Thus, a natural language specification that…

Software Engineering · Computer Science 2016-12-07 Phan Vo Thu Nhat , Maria Spichkova

Ackermann's function can be expressed using an iterative algorithm, which essentially takes the form of a term rewriting system. Although the termination of this algorithm is far from obvious, its equivalence to the traditional recursive…

Logic in Computer Science · Computer Science 2022-10-14 Lawrence C Paulson

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

A domain specific language (DSL) abstracts from implementation details and is aligned with the way domain experts reason about a software component. The development of DSLs is usually centered around a grammar and transformations that…

Software Engineering · Computer Science 2016-03-30 Sarmen Keshishzadeh , Arjan J. Mooij , Jozef Hooman

Use case driven development methodologies put use cases at the center of the software development process. However, in order to support automated development and analysis, use cases need to be appropriately formalized. This will also help…

Software Engineering · Computer Science 2016-03-30 Rui Couto , António Nestor Ribeiro , José Creissac Campos

The demonstrated code-understanding capability of LLMs raises the question of whether they can be used for automated program verification, a task that demands high-level abstract reasoning about program properties that is challenging for…

Formal Languages and Automata Theory · Computer Science 2024-04-26 Haoze Wu , Clark Barrett , Nina Narodytska

Many recent analyses for conventional imperative programs begin by transforming programs into logic programs, capitalising on existing LP analyses and simple LP semantics. We propose using logic programs as an intermediate program…

Programming Languages · Computer Science 2020-02-19 Graeme Gange , Jorge A. Navas , Peter Schachte , Harald Sondergaard , Peter J. Stuckey

We aim to explore how developers document their refactoring activities during the software life cycle. We call such activity Self-Affirmed Refactoring (SAR), which indicates developers' documentation of their refactoring activities. SAR is…

Software Engineering · Computer Science 2023-06-12 Eman Abdullah AlOmar