Galois Transformers and Modular Abstract Interpreters
David Darais, Matthew Might, David Van Horn

TL;DR
This paper introduces Galois transformers, a modular framework for building sound static analyzers that are easily composable and reusable, reducing implementation complexity and enhancing metatheoretical guarantees.
Contribution
It presents Galois transformers as monad transformers that transport Galois connection properties, enabling systematic and sound composition of static analysis features.
Findings
Galois transformers ensure soundness of composed analyses.
They facilitate reusable and modular static analyzer construction.
The approach simplifies the synthesis of sound analyzers for non-specialists.
Abstract
The design and implementation of static analyzers has become increasingly systematic. Yet for a given language or analysis feature, it often requires tedious and error prone work to implement an analyzer and prove it sound. In short, static analysis features and their proofs of soundness do not compose well, causing a dearth of reuse in both implementation and metatheory. We solve the problem of systematically constructing static analyzers by introducing Galois transformers: monad transformers that transport Galois connection properties. In concert with a monadic interpreter, we define a library of monad transformers that implement building blocks for classic analysis parameters like context, path, and heap (in)sensitivity. Moreover, these can be composed together independent of the language being analyzed. Significantly, a Galois transformer can be proved sound once and for all,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
