Maintaining a Library of Formal Mathematics

@inproceedings{Doorn2020MaintainingAL,
  title={Maintaining a Library of Formal Mathematics},
  author={Floris van Doorn and Gabriel Ebner and Robert Y. Lewis},
  booktitle={CICM},
  year={2020}
}
The Lean mathematical library mathlib is developed by a community of users with very different backgrounds and levels of experience. To lower the barrier of entry for contributors and to lessen the burden of reviewing contributions, we have developed a number of tools for the library which check proof developments for subtle mistakes in the code and generate documentation suited for our varied audience. 
A bi-directional extensible interface between Lean and Mathematica
We implement a user-extensible ad hoc connection between the Lean proof assistant and the computer algebra system Mathematica. By reflecting the syntax of each system in the other and providing aExpand
Dependent Type Theory as Related to the Bourbaki Notions of Structure and Isomorphism
This paper develops a version of dependent type theory in which isomorphism is handled through a direct generalization of the 1939 definitions of Bourbaki. More specifically we generalize theExpand
Formalizing Geometric Algebra in Lean
This paper explores formalizing Geometric (or Clifford) algebras into the Lean 3 theorem prover, building upon the substantial body of work that is the Lean mathematics library, mathlib . As we useExpand
The Lean 4 Theorem Prover and Programming Language
TLDR
Lean 4 is a reimplementation of the Lean interactive theorem prover (ITP) in Lean itself and contains many new features, addressing significant performance problems reported by the growing user base. Expand
Simplifying Casts and Coercions
TLDR
This paper introduces norm_cast, a toolbox of tactics for the Lean proof assistant designed to manipulate expressions containing coercions and casts, used extensively to eliminate boilerplate arguments in the Lean mathematical library and in external developments. Expand
Simplifying Casts and Coercions (Extended Abstract)
TLDR
This paper introduces norm_cast, a toolbox of tactics for the Lean proof assistant designed to manipulate expressions containing coercions and casts, used extensively to eliminate boilerplate arguments in the Lean mathematical library and in external developments. Expand

References

SHOWING 1-10 OF 26 REFERENCES
Isabelle/HOL: A Proof Assistant for Higher-Order Logic
Elementary Techniques.- 1. The Basics.- 2. Functional Programming in HOL.- 3. More Functional Programming.- 4. Presenting Theories.- Logic and Sets.- 5. The Rules of the Game.- 6. Sets, Functions,Expand
A formal proof of the independence of the continuum hypothesis
We describe a formal proof of the independence of the continuum hypothesis (CH) in the Lean theorem prover. We use Boolean-valued models to give forcing arguments for both directions, using CohenExpand
Formalising perfectoid spaces
TLDR
It is confirmed that a proof assistant can handle complexity in that direction, and it is observed that formalising a piece of mathematics that is a trending topic boosts the visibility of proof assistants amongst pure mathematicians. Expand
Hierarchy Builder: Algebraic hierarchies Made Easy in Coq with Elpi (System Description)
TLDR
HB, a high level language to build hierarchies of algebraic structures and to make these hierarchies evolve without breaking user code is described and implemented in the hierarchy-builder addon for the Coq system using the Elpi extension language. Expand
Hierarchy Builder: algebraic hierarchies made easy in Coq with Elpi (Feb 2020)
  • 2020
Tabled Typeclass Resolution
TLDR
This work presents a new type class resolution procedure, called tabled typeclass resolution, that solves the diamond problem and the cycle problem and hopes it facilitates even more sophisticated uses of typeclasses in both software development and interactive theorem proving. Expand
The lean mathematical library
This paper describes mathlib, a community-driven effort to build a unified library of mathematics formalized in the Lean proof assistant. Among proof assistant libraries, it is distinguished by itsExpand
Validating Mathematical Structures
TLDR
This work identifies two hierarchy invariants that ensure modularity of reasoning and predictability of inference with packed classes, and proposes algorithms to check these invariants and implement these algorithms as tools for the Coq proof assistant. Expand
Formalizing the Solution to the Cap Set Problem
TLDR
A formalization of this proof in the Lean proof assistant, including both the general result in $\mathbb{F}^n_q$ and concrete values for the case $q = 3$ shows that (some) modern mathematics is within the range of proof assistants. Expand
Isabelle technology for the Archive of Formal Proofs with application to MMT
TLDR
This is an overview of the Isabelle technology behind the Archive of Formal Proofs (AFP), with notable add-ons like prover session exports and headless PIDE for automated updates based on semantic information. Expand
...
1
2
3
...