Effective homology of bicomplexes, formalized in Coq

In this paper, we present a complete formalization in the Coq theorem prover of an important algorithm in computational algebra, namely the calculation of the effective homology of a bicomplex. As a necessary tool, we encode a hierarchy of algebraic structures in constructive type theory, including graded and infinite data structures. The experience shows how some limitations of the Coq proof assistant to deal with this kind of algebraic data can be overcome by applying a separation of concerns principle; more concretely, we propose to distinguish in the representation of an algebraic structure (such as a group or a module) a behavioural part, containing operation signatures and axioms, and a structural part determining if the algebraic data is free, of finite type and so on.

[1]  Xavier Leroy,et al.  Formal verification of a realistic compiler , 2009, CACM.

[2]  Laureano Lambán Pardo,et al.  Contribuciones científicas en honor de Mirian Andrés Gómez , 2010 .

[3]  César Domínguez,et al.  Object oriented institutions to specify symbolic computation systems , 2007, RAIRO Theor. Informatics Appl..

[4]  Jesús Aransay,et al.  Generating certified code from formal proofs: a case study in homological algebra , 2010, Formal Aspects of Computing.

[5]  Pierre Castéran,et al.  Interactive Theorem Proving and Program Development , 2004, Texts in Theoretical Computer Science An EATCS Series.

[6]  Francis Sergeraert,et al.  The Computability Problem in Algebraic Topology , 1994 .

[7]  Manfred Broy,et al.  Seamless Model Driven Systems Engineering Based on Formal Models , 2009, ICFEM.

[8]  Manfred Broy,et al.  On the correctness of upper layers of automotive systems , 2008, Formal Aspects of Computing.

[9]  Herman Geuvers,et al.  A Constructive Algebraic Hierarchy in Coq , 2002, J. Symb. Comput..

[10]  Yves Bertot,et al.  Interactive Theorem Proving and Program Development: Coq'Art The Calculus of Inductive Constructions , 2010 .

[11]  Jesús Aransay,et al.  A Mechanized Proof of the Basic Perturbation Lemma , 2008, Journal of Automated Reasoning.

[12]  Vico Pascual,et al.  An Object-oriented Interpretation of the EAT System , 2003, Applicable Algebra in Engineering, Communication and Computing.

[13]  Tobias Nipkow,et al.  Flyspeck II: the basic linear programs , 2009, Annals of Mathematics and Artificial Intelligence.

[14]  N. Jacobson,et al.  Basic Algebra II , 1989 .

[15]  Herbert Edelsbrunner,et al.  Computational Topology - an Introduction , 2009 .

[16]  Thierry Coquand,et al.  Towards Constructive Homological Algebra in Type Theory , 2007, Calculemus/MKM.

[17]  César Domínguez,et al.  Diagrammatic logic applied to a parameterisation process , 2009, Mathematical Structures in Computer Science.

[18]  Julio Rubio,et al.  Constructive algebraic topology , 2002 .

[19]  Bas Spitters,et al.  Developing the Algebraic Hierarchy with Type Classes in Coq , 2010, ITP.

[20]  Georges Gonthier,et al.  Formal Proof—The Four- Color Theorem , 2008 .

[21]  Patrick Brézillon,et al.  Lecture Notes in Artificial Intelligence , 1999 .

[22]  Enrico Tassi,et al.  A Modular Formalisation of Finite Group Theory , 2007, TPHOLs.

[23]  Jesús Aransay,et al.  Modelling Differential Structures in Proof Assistants: The Graded Case , 2009, EUROCAST.