## The algebraic hierarchy of the FTA Project (2002)

Venue: | Journal of Symbolic Computation, Special Issue on the Integration of Automated Reasoning and Computer Algebra Systems |

Citations: | 14 - 7 self |

### BibTeX

@INPROCEEDINGS{Geuvers02thealgebraic,

author = {Herman Geuvers and Y Pollack and Freek Wiedijk and Jan Zwanenburg},

title = {The algebraic hierarchy of the FTA Project},

booktitle = {Journal of Symbolic Computation, Special Issue on the Integration of Automated Reasoning and Computer Algebra Systems},

year = {2002},

pages = {271--286},

publisher = {Elsevier}

}

### OpenURL

### Abstract

Abstract. We describe a framework for algebraic expressions for the proof assistant Coq. This framework has been developed as part of the FTA project in Nijmegen, in which a complete proof of the fundamental theorem of algebra has been formalized in Coq. The algebraic framework that is described here is both abstract and structured. We apply a combination of record types, coercive subtyping and implicit arguments. The algebraic framework contains a full development of the real and complex numbers and of the rings of polynomials over these fields. The framework is constructive. It does not use anything apart from the Coq logic. The framework has been successfully used to formalize non-trivial mathematics as part of the FTA project.

### Citations

534 | PVS: A Prototype Verification System
- Owre, Rushby, et al.
- 1992
(Show Context)
Citation Context ...d it would be desirable to have a type CMetricField for this. Partial functions. The current way Coq deals with partiality is through proof terms in the expressions. This is unnatural. The PVS system =-=[16]-=- offers a different solution: in PVS a partial function is a total function on its domain. Whether a partial function is defined on an element is handled through so-called ‘type check conditions’, whi... |

404 | Constructive Analysis
- Bishop, Bridges
- 1985
(Show Context)
Citation Context ...setoid functions called CSetoid_bin_fun and CSetoid_bin_op (the second is a specialized case of thesrst in which the domain and range setoids are the same). The dening property is_CRing is: 1 Bishop [=-=3]-=- calls these operations and functions respectively.sHerman Geuvers, Randy Pollack, Freek Wiedijk, Jan Zwanenburg Record is_CRing [G:CGroup; one:G; mult:(CSetoid_bin_op G)] : Prop := { ax_mult_assoc : ... |

93 |
The scientific computation system
- Jenks, Sutor, et al.
- 1992
(Show Context)
Citation Context ...eritance between structures. Loïc Pottier implemented a classical algebraic hierarchy for Coq. This hierarchy is more elaborate than ours and mimics the hierarchy of the Axiom computer algebra system =-=[11]-=-. This hierarchy has been presented in conferences (Calculemus ’98, Types ’99), but there is nothing about it in the proceedings. All that exists is a brief web page in French [18]. A constructive alg... |

49 |
PVS: A prototype veri system
- Owre, Rushby, et al.
- 1992
(Show Context)
Citation Context ...d it would be desirable to have a type CMetricField for this. Partial functions. The current way Coq deals with partiality is through proof terms in the expressions. This is unnatural. The PVS system =-=[-=-16] oers a dierent solution: in PVS a partial function is a total function on its domain. Whether a partial function is dened on an element is handled through so-called `type check conditions', which ... |

46 | Coercive subtyping
- Luo
- 1997
(Show Context)
Citation Context ... term actually contains 33 function symbols. This shows that the terms in our framework are relatively `heavy'. But note that most of this big term is inferable coercions. In Luo's coercive subtyping =-=[13]-=- these parts of the term are actually elided, not just suppressed in printing. This may be an important optimization for large scale formal mathematics. 8 Conclusion We presented a framework for writi... |

44 | Enhancing the Nuprl proof-development system and applying it to computational abstract algebra
- Jackson
- 1995
(Show Context)
Citation Context ...ment. Our framework has been written and optimized for real-life use (to prove the fundamental theorem of algebra) and not as a toy exercise in abstract mathematics. Paul Jackson, in his Ph.D. thesis =-=[10]-=-, presents a constructive development of algebra in Nuprl and uses it to prove some results in abstract algebra. Nuprl, like Coq, is based on type theory, but it uses an extensional equality. This mak... |

40 | Typing algorithm in type theory with inheritance
- Saibi
- 1997
(Show Context)
Citation Context ... coercion (indicated by the annotation :>) which Coq can silently insert, as explained above (Sect. 3). So the type CRing is a coercive subtype of CGroup. For details of coercive subtyping in Coq see =-=[19, 2]-=-. The multiplication operation of a ring is a setoid function: it respects setoid equality. We have types for such setoid functions called CSetoid_bin_fun and CSetoid_bin_op (the second is a specializ... |

30 |
The machine-checked literate formalisation of algebra in type theory
- Bailey
- 1998
(Show Context)
Citation Context ... about it in the proceedings. All that exists is a brief web page in French [18]. A constructive algebraic hierarchy for Lego in the work of Anthony Bailey has only been presented in his Ph.D. thesis =-=[1]-=-, which is not readily available. (Bailey left research and has no web page.) Many provers have a formalization of the real numbers. Often such a formalization is ` at' { the type of the real numbers ... |

26 | A Constructive Proof of the Fundamental Theorem of Algebra without Using the Rationals
- Geuvers, Wiedijk, et al.
- 2002
(Show Context)
Citation Context ...lex numbers has a zero. In other words it says that theseld of the complex numbers is algebraically closed. The proof that was translated to Coq was a constructive proof by Hellmuth and Martin Kneser =-=[12, 8]-=-. Because of its constructive nature we could keep the formalization free of axioms. All that we needed was already present in the Coq logic, the calculus of inductive constructions. Thesnal statement... |

16 |
Fundamental theorem of algebra
- Milewski
- 2001
(Show Context)
Citation Context ...project had beensnished, a classical proof of the fundamental theorem of algebra had already 4 Herman Geuvers, Randy Pollack, Freek Wiedijk, Jan Zwanenburg been formalized by Robert Milewski in Mizar =-=[14]-=- and by John Harrison in HOL [9]. The people involved with the FTA formalization were: { Herman Geuvers { Randy Pollack { Freek Wiedijk { Jan Zwanenburg { Milad Niqui { Henk Barendregt Thesrst four pe... |

14 | Dependently typed records for representing mathematical structure
- Pollack
- 2000
(Show Context)
Citation Context ...tural subtype of AName in the sense of having at least all theselds of AName. Instead AName occurs as aseld in BName. (Records in Coq are right associative and not extensible, in the classication of [=-=17]-=-.) However BName is a subtype of AName by the coercion b_crr, so that wherever an AName is expected, a BName can be used instead. 5 Three ways to classify addition We will now compare three ways to tr... |

13 |
Field: une procédure de décision pour les nombres réels en Coq
- Delahaye, Mayero
- 2001
(Show Context)
Citation Context ...pe of the real numbers is not an instance of a notion of `eld' { but some are part of an algebraic hierarchy. Asat development of the real numbers has been added to the Coq library by Micaela Mayero [=-=5-=-]. This development only gives axioms for the real numbers and does not implement a specic model of it. Again this work is not constructive. The Mizar system [15, 20] has bothsat real numbers as well ... |

12 |
AXIOM: The Scienti c Computation System
- Jenks, Sutor
- 1992
(Show Context)
Citation Context ...ritance between structures. Loc Pottier implemented a classical algebraic hierarchy for Coq. This hierarchy is more elaborate than ours and mimics the hierarchy of the Axiom computer algebra system [1=-=1]-=-. This hierarchy has been presented in conferences (Calculemus '98, Types '99), but there is nothing about it in the proceedings. All that exists is a brief web page in French [18]. A constructive alg... |

11 | Equational reasoning via partial reflection
- Geuvers, Wiedijk, et al.
- 2000
(Show Context)
Citation Context ... a L ATEX document, in the spirit of ‘literate programming’. Also we developed specific reasoning tools to make it easier to reason inside our framework without having to know the names of the lemmas =-=[7]-=-. 1.5 Outline of the paper In Sect. 2 an overview of the FTA project is presented. Sect. 3 gives the notion of constructive setoid. Building on this, Sect. 4 presents the algebraic hierarchy. Sect. 5 ... |

9 |
Equational reasoning via partial re
- Geuvers, Wiedijk, et al.
- 2000
(Show Context)
Citation Context ... L A T E X document, in the spirit of `literate programming'. Also we developed specic reasoning tools to make it easier to reason inside our framework without having to know the names of the lemmas [=-=7]-=-. 1.5 Outline of the paper In Sect. 2 an overview of the FTA project is presented. Sect. 3 gives the notion of constructive setoid. Building on this, Sect. 4 presents the algebraic hierarchy. Sect. 5 ... |

7 |
Erganzung zu einer Arbeit von Hellmuth Kneser uber den Fundamentalsatz der Algebra
- Kneser
- 1981
(Show Context)
Citation Context ...lex numbers has a zero. In other words it says that theseld of the complex numbers is algebraically closed. The proof that was translated to Coq was a constructive proof by Hellmuth and Martin Kneser =-=[12, 8]-=-. Because of its constructive nature we could keep the formalization free of axioms. All that we needed was already present in the Coq logic, the calculus of inductive constructions. Thesnal statement... |

7 | Mizar: An impression
- Wiedijk
- 1999
(Show Context)
Citation Context ...d to the Coq library by Micaela Mayero [5]. This development only gives axioms for the real numbers and does not implement a specic model of it. Again this work is not constructive. The Mizar system [=-=15, 20]-=- has bothsat real numbers as well as an algebraic hierarchy. Interestingly, it is thesat real numbers that is used in most proofs that need the real numbers. The Mizar algebraic hierarchy is scattered... |

6 |
et al. The Coq Proof Assistant Reference
- Barras
- 1998
(Show Context)
Citation Context ...he framework has been successfully used to formalize non-trivial mathematics as part of the FTA project. 1 Introduction 1.1 Background When we started working on the FTA project in the proof tool Coq =-=[2]-=- (see Sect. 2 for an overview of this project) we needed an algebraic framework for it. There were several requirements for such a framework. { We wanted to translate a constructive proof of the funda... |

6 |
The qed manifesto
- Boyer
- 1994
(Show Context)
Citation Context ...up of Henk Barendregt at the University of Nijmegen, a proof of the fundamental theorem of algebra was formalized in the Coq proof assistant [2]. This work was done in the spirit of the QED Manifesto =-=[4]-=-. The proof of the FTA project is constructive. Before the FTA project had beensnished, a classical proof of the fundamental theorem of algebra had already 4 Herman Geuvers, Randy Pollack, Freek Wiedi... |

3 |
An Outline of PC Mizar. Fond. Philippe le Hodey
- Muzalewski
- 1993
(Show Context)
Citation Context ...d to the Coq library by Micaela Mayero [5]. This development only gives axioms for the real numbers and does not implement a specic model of it. Again this work is not constructive. The Mizar system [=-=15, 20]-=- has bothsat real numbers as well as an algebraic hierarchy. Interestingly, it is thesat real numbers that is used in most proofs that need the real numbers. The Mizar algebraic hierarchy is scattered... |

3 |
Typing algorithm in type theory with inheritance
- Sabi
- 1997
(Show Context)
Citation Context ... coercion (indicated by the annotation :>) which Coq can silently insert, as explained above (Sect. 3). So the type CRing is a coercive subtype of CGroup. For details of coercive subtyping in Coq see =-=[19, 2]-=-. The multiplication operation of a ring is a setoid function: it respects setoid equality. We have types for such setoid functions called CSetoid_bin_fun and CSetoid_bin_op (the second is a specializ... |

2 |
Un debut de formalisation de l'algebre en Coq et Ctcoq. Web page
- Pottier
- 2001
(Show Context)
Citation Context ...uter algebra system [11]. This hierarchy has been presented in conferences (Calculemus '98, Types '99), but there is nothing about it in the proceedings. All that exists is a brief web page in French =-=[18]-=-. A constructive algebraic hierarchy for Lego in the work of Anthony Bailey has only been presented in his Ph.D. thesis [1], which is not readily available. (Bailey left research and has no web page.)... |

1 |
Complex quanti elimination
- Harrison
- 2001
(Show Context)
Citation Context ...cal proof of the fundamental theorem of algebra had already 4 Herman Geuvers, Randy Pollack, Freek Wiedijk, Jan Zwanenburg been formalized by Robert Milewski in Mizar [14] and by John Harrison in HOL =-=[9]-=-. The people involved with the FTA formalization were: { Herman Geuvers { Randy Pollack { Freek Wiedijk { Jan Zwanenburg { Milad Niqui { Henk Barendregt Thesrst four people designed the algebraic hier... |

1 |
Complex quantifier elimination
- Harrison
- 2001
(Show Context)
Citation Context ...cal proof of the fundamental theorem of algebra had alreadys4 Herman Geuvers, Randy Pollack, Freek Wiedijk, Jan Zwanenburg been formalized by Robert Milewski in Mizar [14] and by John Harrison in HOL =-=[9]-=-. The people involved with the FTA formalization were: – Herman Geuvers – Randy Pollack – Freek Wiedijk – Jan Zwanenburg – Milad Niqui – Henk Barendregt The first four people designed the algebraic hi... |