English
Related papers

Related papers: A Formal Algebraic Framework for DSL Composition

200 papers

We present Pyrosome, a generic framework for modular language metatheory that embodies a novel approach to extensible semantics and compilation, implemented in Coq. Common techniques for semantic reasoning are often tied to the specific…

Programming Languages · Computer Science 2025-07-10 Dustin Jamner , Gabriel Kammer , Ritam Nag , Adam Chlipala

Formal verification techniques have been playing an important role in pre-silicon validation processes. One of the most important points considered in performing formal verification is to define good verification scopes; we should define…

Logic in Computer Science · Computer Science 2011-11-09 Yasushi Umezawa , Takeshi Shimizu

Domain-specific languages (DSLs) are routinely created to simplify difficult or specialized programming tasks. They expose useful abstractions and design patterns in the form of language constructs, provide static semantics to eagerly…

Programming Languages · Computer Science 2020-02-19 Ethan K. Jackson

We argue that the implementation and verification of compilers for functional programming languages are greatly simplified by employing a higher-order representation of syntax known as Higher-Order Abstract Syntax or HOAS. The underlying…

Programming Languages · Computer Science 2017-02-14 Yuting Wang

Common programming tools, like compilers, debuggers, and IDEs, crucially rely on the ability to analyse program code to reason about its behaviour and properties. There has been a great deal of work on verifying compilers and static…

Programming Languages · Computer Science 2019-07-15 Jan Stolarek , James Cheney

Compilers are a prime target for formal verification, since compiler bugs invalidate higher-level correctness guarantees, but compiler changes may become more labor-intensive to implement, if they must come with proof patches. One appealing…

Programming Languages · Computer Science 2025-03-12 Jason Gross , Andres Erbsen , Jade Philipoom , Rajashree Agrawal , Adam Chlipala

The purpose of a program analysis is to compute an abstract meaning for a program which approximates its dynamic behaviour. A compositional program analysis accomplishes this task with a divide-and-conquer strategy: the meaning of a program…

Programming Languages · Computer Science 2013-10-15 Azadeh Farzan , Zachary Kincaid

Logical frameworks and meta-languages form a common substrate for representing, implementing and reasoning about a wide variety of deductive systems of interest in logic and computer science. Their design, implementation and their use in…

Logic in Computer Science · Computer Science 2023-11-17 Alberto Ciaffaglione , Carlos Olarte

Lighthouse projects such as CompCert, seL4, IronFleet, and DeepSpec have demonstrated that full verification of entire systems is feasible by establishing a refinement relation between an abstract system specification and an executable…

Logic in Computer Science · Computer Science 2020-10-13 Christoph Sprenger , Tobias Klenze , Marco Eilers , Felix A. Wolf , Peter Müller , Martin Clochard , David Basin

We apply a compositional formal modeling and verification method to an autonomous aircraft taxi system. We provide insights into the modeling approach and we identify several research areas where further development is needed. Specifically,…

Systems and Control · Electrical Eng. & Systems 2023-04-27 Alessandro Pinto , Anthony Corso , Edward Schmerling

The implementation of security protocols often combines different languages. This practice, however, poses a challenge to traditional verification techniques, which typically assume a single-language environment and, therefore, are…

Cryptography and Security · Computer Science 2025-05-16 Faezeh Nasrabadi , Robert Künnemann , Hamed Nemati

This paper proposes a functional foundation for model driven engineering that unifies model construction, metamodels, templates, and transformations under a single formalism: the model expression algebra. In this algebra, models are values,…

Software Engineering · Computer Science 2026-04-08 Sinisa Neskovic , Dejan Stojimirovic

In this position paper, we propose a reasoning framework that can model the reasoning process underlying natural language inferences. The framework is based on the semantic tableau method, a well-studied proof system in formal logic. Like…

Computation and Language · Computer Science 2025-02-10 Lasha Abzianidze

A formal definition of the semantics of a domain-specific language (DSL) is a key prerequisite for the verification of the correctness of models specified using such a DSL and of transformations applied to these models. For this reason, we…

Software Engineering · Computer Science 2011-07-06 Suzana Andova , Mark van den Brand , Luc Engelen

The ever-growing complexity of mathematical proofs makes their manual verification by mathematicians very cognitively demanding. Autoformalization seeks to address this by translating proofs written in natural language into a formal…

Computation and Language · Computer Science 2023-01-06 Garett Cunningham , Razvan C. Bunescu , David Juedes

This paper describes a formal proof library, developed using the Coq proof assistant, designed to assist users in writing correct diagrammatic proofs, for 1-categories. This library proposes a deep-embedded, domain-specific formal language,…

Logic in Computer Science · Computer Science 2024-03-01 Benoît Guillemet , Assia Mahboubi , Matthieu Piquerez

We propose a novel approach for the formal verification of biological systems based on the use of a modal linear logic. We show how such a logic can be used, with worlds as instants of time, as an unified framework to encode both biological…

Logic in Computer Science · Computer Science 2014-05-03 Elisabetta De Maria , Joelle Despeyroux , Amy Felty

We present a marriage of functional and structured imperative programming that embeds in pure lambda calculus. We describe how we implement the core of this language in a monadic DSL which is structurally equivalent to our intended source…

Programming Languages · Computer Science 2017-03-17 Phil Scott , Steven Obua , Jacques Fleuriot

This paper presents a Coq formalization of linear algebra over elementary divisor rings, that is, rings where every matrix is equivalent to a matrix in Smith normal form. The main results are the formalization that these rings support…

Logic in Computer Science · Computer Science 2019-03-14 Guillaume Cano , Cyril Cohen , Maxime Dénès , Anders Mörtberg , Vincent Siles

Formalisation is the process of writing system requirements in a formal language. These requirements mostly originate in Natural Language. In the field of Formal Methods, formalisation is often identified as one of the most delicate and…

Computation and Language · Computer Science 2026-05-12 Joost J. Joosten , Marina López Chamosa , Sofía Santiago Fernández