The Multiverse: Logical Modularity for Proof Assistants

08/23/2021
by   Kenji Maillard, et al.
0

Proof assistants play a dual role as programming languages and logical systems. As programming languages, proof assistants offer standard modularity mechanisms such as first-class functions, type polymorphism and modules. As logical systems, however, modularity is lacking, and understandably so: incompatible reasoning principles – such as univalence and uniqueness of identity proofs – can indirectly lead to logical inconsistency when used in a given development, even when they appear to be confined to different modules. The lack of logical modularity in proof assistants also hinders the adoption of richer programming constructs, such as effects. We propose the multiverse, a general type-theoretic approach to endow proof assistants with logical modularity. The multiverse consists of multiple universe hierarchies that statically describe the reasoning principles and effects available to define a term at a given type. We identify sufficient conditions for this structuring to modularly ensure that incompatible principles do not interfere, and to locally restrict the power of dependent elimination when necessary. This extensible approach generalizes the ad-hoc treatment of the sort of propositions in the Coq proof assistant. We illustrate the power of the multiverse by describing the inclusion of Coq-style propositions, the strict propositions of Gilbert et al., the exceptional type theory of Pédrot and Tabareau, and general axiomatic extensions of the logic.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

09/03/2017

Formalising Type-Logical Grammars in Agda

In recent years, the interest in using proof assistants to formalise and...
10/24/2019

A Definitional Implementation of the Lax Logical Framework LLFP in Coq, for Supporting Fast and Loose Reasoning

The Lax Logical Framework, LLFP, was introduced, by a team including the...
09/03/2021

A Survey of the Proof-Theoretic Foundations of Logic Programming

Several formal systems, such as resolution and minimal model semantics, ...
07/05/2018

Sharing a Library between Proof Assistants: Reaching out to the HOL Family

We observe today a large diversity of proof systems. This diversity has ...
11/25/2002

Monadic Style Control Constructs for Inference Systems

Recent advances in programming languages study and design have establish...
04/12/2021

Quotients of Bounded Natural Functors

The functorial structure of type constructors is the foundation for many...
03/03/2020

Sealing Pointer-Based Optimizations Behind Pure Functions

Functional programming languages are particularly well-suited for buildi...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.