Abstract. This paper reports on a six-year collaborative effort that culminated in a complete formalization of a proof of the Feit-Thompson Odd Order Theorem in the Coq proof assistant. The formalized proof is constructive, and relies on nothing but the axioms and rules of the foundational framework implemented by Coq. To support the formalization, we developed a comprehensive set of reusable libraries of formalized mathematics, including results in finite group theory, linear algebra, Galois theory, and the theories of the real and complex algebraic numbers.
Reasoning about real number expressions in a proof assistant is challenging. Several problems in theorem proving can be solved by using exact real number computation. I have implemented a library for reasoning and computing with complete metric spaces in the Coq proof assistant and used this library to build a constructive real number implementation including elementary real number functions and proofs of correctness. Using this library, I have created a tactic that automatically proves strict inequalities over closed elementary real number expressions by computation. LicenceThis work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/nl/ or send a letter to Creative Commons,
Representation theorems relate seemingly complex objects to concrete, more tractable ones. In this paper, we take advantage of the abstraction power of category theory and provide a datatype-generic representation theorem. More precisely, we prove a representation theorem for a wide class of second-order functionals which are polymorphic over a class of functors. Types polymorphic over a class of functors are easily representable in languages such as Haskell, but are difficult to analyse and reason about. The concrete representation provided by the theorem is easier to analyse, but it might not be as convenient to implement. Therefore, depending on the task at hand, the change of representation may prove valuable in one direction or the other. We showcase the usefulness of the representation theorem with a range of examples. Concretely, we show how the representation theorem can be used to prove that traversable functors are finitary containers, how coalgebras of a parameterised store comonad relate to very well-behaved lenses, and how algebraic effects might be implemented in a functional language.
The mission of mechanized mathematics is to develop software systems that support the process people use to create, explore, connect, and apply mathematics. Working mathematicians routinely leverage a powerful synergy between deduction and computation. The artificial division between (axiomatic) theorem proving systems and (algorithmic) computer algebra systems has broken this synergy. To significantly advance mechanized mathematics, this synergy needs to be recaptured within a single framework. MathScheme [6] is a long-term project being pursued at McMaster University with the aim of producing such a framework in which formal deduction and symbolic computation are tightly integrated. In the short-term, we are developing tools and techniques to support this approach, with the long-term objective to produce a new system.Towards this aim, we have already developed several techniques, with some laying the theoretical foundations of our framework, while others are implementation techniques. In particular, we rely on biform theories and an expressive logic (Chiron) for grounding. We rely on various meta-programming techniques as well as the increased safety offered by a modern statically typed programming language (Objective Caml [8]) to greatly simplify our implementation burden.A biform theory [1, 3] is a combination of an axiomatic theory and an algorithmic theory. It is the basic unit of mathematical knowledge that consists of a set of concepts, transformers, and facts. The concepts are symbols that denote mathematical values and, together with the transformers, form a language L for the theory. The transformers are programs whose input and output are expressions of L. Transformers represent syntax-manipulating operations such as inference and computation rules. The facts are statements expressed in L about the concepts and transformers. In a typical biform theory, the concepts are classified as primitive or defined, the transformers as primitive or derived, and the facts as axioms, definitions, or theorems. A pure axiomatic theory is a biform theory with no transformers, and a pure algorithmic theory is a biform theory with no facts or only facts about the transformers.Since transformers manipulate the syntax of expressions, biform theories are difficult to formalize in a traditional logic without the means to reason about ⋆
Abstract. We motivate and give semantics to theory presentation combinators as the foundational building blocks for a scalable library of theories. The key observation is that the category of contexts and fibered categories are the ideal theoretical tools for this purpose.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.