Results 1  10
of
43
A proof of the Kepler conjecture
 Math. Intelligencer
, 1994
"... This section describes the structure of the proof of ..."
Abstract

Cited by 112 (11 self)
 Add to MetaCart
This section describes the structure of the proof of
Ynot: Dependent types for imperative programs
 In Proceedings of ICFP 2008
, 2008
"... We describe an axiomatic extension to the Coq proof assistant, that supports writing, reasoning about, and extracting higherorder, dependentlytyped programs with sideeffects. Coq already includes a powerful functional language that supports dependent types, but that language is limited to pure, t ..."
Abstract

Cited by 36 (10 self)
 Add to MetaCart
We describe an axiomatic extension to the Coq proof assistant, that supports writing, reasoning about, and extracting higherorder, dependentlytyped programs with sideeffects. Coq already includes a powerful functional language that supports dependent types, but that language is limited to pure, total functions. The key contribution of our extension, which we call Ynot, is the added support for computations that may have effects such as nontermination, accessing a mutable store, and throwing/catching exceptions. The axioms of Ynot form a small trusted computing base which has been formally justified in our previous work on Hoare Type Theory (HTT). We show how these axioms can be combined with the powerful type and abstraction mechanisms of Coq to build higherlevel reasoning mechanisms which in turn can be used to build realistic, verified software components. To substantiate this claim, we describe here a representative series of modules that implement imperative finite maps, including support for a higherorder (effectful) iterator. The implementations range from simple (e.g., association lists) to complex (e.g., hash tables) but share a common interface which abstracts the implementation details and ensures that the modules properly implement the finite map abstraction.
A modular formalisation of finite group theory
 In TPHOLs
, 2007
"... Abstract. In this paper, we present a formalisation of elementary group theory done in Coq. This work is the first milestone of a longterm effort to formalise FeitThompson theorem. As our further developments will heavily rely on this initial base, we took special care to articulate it in the most ..."
Abstract

Cited by 18 (6 self)
 Add to MetaCart
Abstract. In this paper, we present a formalisation of elementary group theory done in Coq. This work is the first milestone of a longterm effort to formalise FeitThompson theorem. As our further developments will heavily rely on this initial base, we took special care to articulate it in the most compositional way. 1
Ynot: Reasoning with the awkward squad
 In ACM SIGPLAN International Conference on Functional Programming
, 2008
"... We describe an axiomatic extension to the Coq proof assistant, that supports writing, reasoning about, and extracting higherorder, dependentlytyped programs with sideeffects. Coq already includes a powerful functional language that supports dependent types, but that language is limited to pure, t ..."
Abstract

Cited by 16 (0 self)
 Add to MetaCart
We describe an axiomatic extension to the Coq proof assistant, that supports writing, reasoning about, and extracting higherorder, dependentlytyped programs with sideeffects. Coq already includes a powerful functional language that supports dependent types, but that language is limited to pure, total functions. The key contribution of our extension, which we call Ynot, is the added support for computations that may have effects such as nontermination, accessing a mutable store, and throwing/catching exceptions. The axioms of Ynot form a small trusted computing base which has been formally justified in our previous work on Hoare Type Theory (HTT). We show how these axioms can be combined with the powerful type and abstraction mechanisms of Coq to build higherlevel reasoning mechanisms which in turn can be used to build realistic, verified software components. To substantiate this claim, we describe here a representative series of modules that implement imperative finite maps, including support for a higherorder (effectful) iterator. The implementations range from simple (e.g., association lists) to complex (e.g., hash tables) but share a common interface which abstracts the implementation details and ensures that the modules properly implement the finite map abstraction.
Formal Proof—The Four Color Theorem
"... Francis Guthrie certainly did it, when he coined his innocent little coloring puzzle in 1852. He managed to embarrass successively his mathematician brother, his brother’s professor, Augustus de Morgan, and all of de Morgan’s visitors, who couldn’t solve it; the Royal Society, who only realized ten ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
Francis Guthrie certainly did it, when he coined his innocent little coloring puzzle in 1852. He managed to embarrass successively his mathematician brother, his brother’s professor, Augustus de Morgan, and all of de Morgan’s visitors, who couldn’t solve it; the Royal Society, who only realized ten years later that Alfred Kempe’s 1879 solution was wrong; and the three following generations of mathematicians who couldn’t fix it [19]. Even Appel and Haken’s 1976 triumph [2] had a hint of defeat: they’d had a computer do the proof for them! Perhaps the mathematical controversy around the proof died down with their book [3] and with the elegant 1995 revision [13] by Robertson, Saunders, Seymour, and Thomas. However
Flyspeck i: Tame graphs
 International Joint Conference on Automated Reasoning, volume 4130 of LNCS
, 2006
"... Abstract. We present a verified enumeration of tame graphs as defined in Hales ’ proof of the Kepler Conjecture and confirm the completeness of Hales ’ list of all tame graphs while reducing it from 5128 to 2771 graphs. 1 ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
Abstract. We present a verified enumeration of tame graphs as defined in Hales ’ proof of the Kepler Conjecture and confirm the completeness of Hales ’ list of all tame graphs while reducing it from 5128 to 2771 graphs. 1
Assisted proof document authoring
 Mathematical Knowledge Management MKM 2005, LNAI 3863
, 2006
"... Abstract. Recently, significant advances have been made in formalised mathematical texts for large, demanding proofs. But although such large developments are possible, they still take an inordinate amount of effort and time, and there is a significant gap between the resulting formalised machinech ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
Abstract. Recently, significant advances have been made in formalised mathematical texts for large, demanding proofs. But although such large developments are possible, they still take an inordinate amount of effort and time, and there is a significant gap between the resulting formalised machinecheckable proof scripts and the corresponding humanreadable mathematical texts. We present an authoring system for formal proof which addresses these concerns. It is based on a central document format which, in the tradition of literate programming, allows one to extract either a formal proof script or a humanreadable document; the two may have differing structure and detail levels, but are developed together in a synchronised way. Additionally, we introduce ways to assist production of the central document, by allowing tools to contribute backflow to update and extend it. Our authoring system builds on the new PG Kit architecture for Proof General, bringing the extra advantage that it works in a uniform interface, generically across various interactive theorem provers. 1
On the strength of proofirrelevant type theories
 of Lecture Notes in Computer Science
, 2006
"... Vol. 4 (3:13) 2008, pp. 1–20 ..."
Working with Mathematical Structures in Type Theory
"... Abstract. We address the problem of representing mathematical structures in a proof assistant which: 1) is based on a type theory with dependent types, telescopes and a computational version of Leibniz equality; 2) implements coercive subtyping, accepting multiple coherent paths between type familie ..."
Abstract

Cited by 8 (4 self)
 Add to MetaCart
Abstract. We address the problem of representing mathematical structures in a proof assistant which: 1) is based on a type theory with dependent types, telescopes and a computational version of Leibniz equality; 2) implements coercive subtyping, accepting multiple coherent paths between type families; 3) implements a restricted form of higher order unification and type reconstruction. We show how to exploit the previous quite common features to reduce the “syntactic ” gap between pen&paper and formalised algebra. However, to reach our goal we need to propose unification and type reconstruction heuristics that are slightly different from the ones usually implemented. We have implemented them in Matita. 1
Independent sets in graphs with an excluded clique minor
 Discrete Math. Theor. Comput. Sci
"... Let G be a graph with n vertices, with independence number α, and with no Kt+1minor for some t ≥ 5. It is proved that (2α − 1)(2t − 5) ≥ 2n − 5. This improves upon the previous best bound whenever n ≥ 2 5 t2. ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
Let G be a graph with n vertices, with independence number α, and with no Kt+1minor for some t ≥ 5. It is proved that (2α − 1)(2t − 5) ≥ 2n − 5. This improves upon the previous best bound whenever n ≥ 2 5 t2.