English
Related papers

Related papers: Galois Transformers and Modular Abstract Interpret…

200 papers

Galois connections are a foundational tool for structuring abstraction in semantics and their use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois connections remains limited to restricted modes of…

Programming Languages · Computer Science 2016-10-27 David Darais , David Van Horn

Galois connections are a foundational tool for structuring abstraction in semantics and their use lies at the heart of the theory of abstract interpretation. Yet, mechanization of Galois connections using proof assistants remains limited to…

Programming Languages · Computer Science 2019-07-10 David Darais , David Van Horn

Abstract interpretation-based static analyses rely on abstract domains of program properties, such as intervals or congruences for integer variables. Galois connections (GCs) between posets provide the most widespread and useful formal tool…

Programming Languages · Computer Science 2017-05-01 Francesco Ranzato

There is a recent interest for the verification of monadic programs using proof assistants. This line of research raises the question of the integration of monad transformers, a standard technique to combine monads. In this paper, we extend…

Logic in Computer Science · Computer Science 2021-07-20 Reynald Affeldt , David Nowak

Calculational abstract interpretation, long advocated by Cousot, is a technique for deriving correct-by-construction abstract interpreters from the formal semantics of programming languages. This paper addresses the problem of deriving…

Programming Languages · Computer Science 2015-07-14 David Darais , David Van Horn

We show that abstract interpretation-based static program analysis can be made efficient and precise enough to formally verify a class of properties for a family of large programs with few or no false alarms. This is achieved by refinement…

Programming Languages · Computer Science 2016-08-14 Bruno Blanchet , Patrick Cousot , Radhia Cousot , Jerôme Feret , Laurent Mauborgne , Antoine Miné , David Monniaux , Xavier Rival

This paper proposes a definition of recognizable transducers over monads and comonads, which bridges two important ongoing efforts in the current research on regularity. The first effort is the study of regular transductions, which extends…

Formal Languages and Automata Theory · Computer Science 2024-07-04 Rafał Stefański

Predictive models are fundamental to engineering reliable software systems. However, designing conservative, computable approximations for the behavior of programs (static analyses) remains a difficult and error-prone process for modern…

Programming Languages · Computer Science 2011-05-10 David Van Horn , Matthew Might

We explore denotational interpreters: denotational semantics that produce coinductive traces of a corresponding small-step operational semantics. By parameterising our denotational interpreter over the semantic domain and then varying it,…

Programming Languages · Computer Science 2024-07-15 Sebastian Graf , Simon Peyton Jones , Sven Keidel

We establish a Galois connection between sub-monads of an augmented monad and sub-functors of the forgetful functor from its Eilenberg-Moore category. This connection is given in terms of invariants and stabilizers defined through universal…

Category Theory · Mathematics 2021-06-09 Johan Felipe García Vargas

This paper concerns the development of metatheory for extensible languages. It uses as its starting point a view that programming languages tailored to specific application domains are to be constructed by composing components from an open…

Programming Languages · Computer Science 2023-12-25 Dawn Michaelson , Gopalan Nadathur , Eric Van Wyk

Static program analysis is a valuable tool for any programming language that people write programs in. The prevalence of scripting languages in the world suggests programming language interpreters are relatively easy to write. Users of…

Programming Languages · Computer Science 2015-05-01 James Ian Johnson

Static analysis is an essential component of many modern software development tools. Unfortunately, the ever-increasing complexity of static analyzers makes their coding error-prone. Even analysis tools based on rigorous mathematical…

Software Engineering · Computer Science 2025-05-08 Daniela Ferreiro , Ignacio Casso , Jose F. Morales , Pedro López-García , Manuel V. Hermenegildo

We consider the problem of making expressive static analyzers interactive. Formal static analysis is seeing increasingly widespread adoption as a tool for verification and bug-finding, but even with powerful cloud infrastructure it can take…

Programming Languages · Computer Science 2021-04-08 Benno Stein , Bor-Yuh Evan Chang , Manu Sridharan

Current numerical abstract interpretation relies on fixed, hand-crafted, instruction-specific transformers tailored to each domain, causing three key limitations: transformers cannot be reused across domains; precise compositional reasoning…

Programming Languages · Computer Science 2026-04-28 Shaurya Gomber , Debangshu Banerjee , Gagandeep Singh

Constructing abstract interpreters that provide global soundness guarantees remains a major obstacle in abstract interpretation. We investigate whether modern LLMs can reduce this burden by leveraging them to synthesize sound, non-trivial…

Programming Languages · Computer Science 2025-11-18 Qiuhan Gu , Avaljot Singh , Gagandeep Singh

The design and implementation of precise static analyzers for significant fragments of modern imperative languages like C, C++, Java and Python is a challenging problem. In this paper, we consider a core imperative language that has several…

Programming Languages · Computer Science 2007-06-28 Roberto Bagnara , Patricia M. Hill , Andrea Pescetti , Enea Zaffanella

We present a general model allowing static analysis based on abstract interpretation for systems of communicating processes. Our technique, inspired by Regular Model Checking, represents set of program states as lattice automata and…

Software Engineering · Computer Science 2016-11-29 Vincent Botbol , Emmanuel Chailloux , Tristan Le Gall

We propose a method for automatically generating abstract transformers for static analysis by abstract interpretation. The method focuses on linear constraints on programs operating on rational, real or floating-point variables and…

Programming Languages · Computer Science 2008-11-04 David Monniaux

In recent years, there has been significant progress in the development and industrial adoption of static analyzers. Such analyzers typically provide a large, if not huge, number of configurable options controlling the precision and…

Software Engineering · Computer Science 2020-10-01 Muhammad Numair Mansur , Benjamin Mariano , Maria Christakis , Jorge A. Navas , Valentin Wüstholz
‹ Prev 1 2 3 10 Next ›