Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Constructive Galois connections: taming the Galois connection framework for mechanized metatheory

View through CrossRef
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 use, preventing their general application in mechanized metatheory and certified programming. This paper presents constructive Galois connections, a variant of Galois connections that is effective both on paper and in proof assistants; is complete with respect to a large subset of classical Galois connections; and enables more general reasoning principles, including the "calculational" style advocated by Cousot. To design constructive Galois connection we identify a restricted mode of use of classical ones which is both general and amenable to mechanization in dependently-typed functional programming languages. Crucial to our metatheory is the addition of monadic structure to Galois connections to control a "specification effect". Effectful calculations may reason classically, while pure calculations have extractable computational content. Explicitly moving between the worlds of specification and implementation is enabled by our metatheory. To validate our approach, we provide two case studies in mechanizing existing proofs from the literature: one uses calculational abstract interpretation to design a static analyzer, the other forms a semantic basis for gradual typing. Both mechanized proofs closely follow their original paper-and-pencil counterparts, employ reasoning principles not captured by previous mechanization approaches, support the extraction of verified algorithms, and are novel.
Association for Computing Machinery (ACM)
Title: Constructive Galois connections: taming the Galois connection framework for mechanized metatheory
Description:
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 use, preventing their general application in mechanized metatheory and certified programming.
This paper presents constructive Galois connections, a variant of Galois connections that is effective both on paper and in proof assistants; is complete with respect to a large subset of classical Galois connections; and enables more general reasoning principles, including the "calculational" style advocated by Cousot.
To design constructive Galois connection we identify a restricted mode of use of classical ones which is both general and amenable to mechanization in dependently-typed functional programming languages.
Crucial to our metatheory is the addition of monadic structure to Galois connections to control a "specification effect".
Effectful calculations may reason classically, while pure calculations have extractable computational content.
Explicitly moving between the worlds of specification and implementation is enabled by our metatheory.
To validate our approach, we provide two case studies in mechanizing existing proofs from the literature: one uses calculational abstract interpretation to design a static analyzer, the other forms a semantic basis for gradual typing.
Both mechanized proofs closely follow their original paper-and-pencil counterparts, employ reasoning principles not captured by previous mechanization approaches, support the extraction of verified algorithms, and are novel.

Related Results

Constructive Galois Connections
Constructive Galois Connections
Abstract Galois connections are a foundational tool for structuring abstraction in semantics, and their use lies at the heart of the theory o...
Galois transformers and modular abstract interpreters: reusable metatheory for program analysis
Galois transformers and modular abstract interpreters: reusable metatheory for program analysis
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 t...
Arithmetic Progression and Binary Recurrence
Arithmetic Progression and Binary Recurrence
When it comes to Galois theory, the idea of a field extension is considered to be one of the most fundamental concepts. In Galois theory, the field that is now being explored is us...
Harish-Chandra Modules over Hopf Galois Orders
Harish-Chandra Modules over Hopf Galois Orders
AbstractThe theory of Galois orders was introduced by Futorny and Ovsienko [9]. We introduce the notion of $\mathcal {H}$-Galois $\Lambda $-orders. These are certain noncommutative...
Analysis of the profitability of oil palm processing techniques in Kogi State, Nigeria
Analysis of the profitability of oil palm processing techniques in Kogi State, Nigeria
The processing of palm fruit is one of the most prominent agricultural processing activities carried out in Nigeria. This paper ascertained the extent of oil palm processing profit...
Sejarah Keberadaan Gordang Sambilan Di Desa Taming Kabupaten Pasaman Barat
Sejarah Keberadaan Gordang Sambilan Di Desa Taming Kabupaten Pasaman Barat
This research aims to describe the history of the existence of Gordang Sambilan in the community in Taming village, Ranah Batahan District, West Pasaman Regency, West Sumatra Provi...
Flexural behavior of timber connection with various multiple-bolt configurations
Flexural behavior of timber connection with various multiple-bolt configurations
The goal of this research is to investigate the behavior of timber connection subjected to bending moment. The effects of multiple-bolt configuration on maximum moment resistance, ...

Back to Top