Computing in Coq with Infinite Algebraic Data Structures

  • César Domínguez
  • Julio Rubio
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6167)


Computational content encoded into constructive type theory proofs can be used to make computing experiments over concrete data structures. In this paper, we explore this possibility when working in Coq with chain complexes of infinite type (that is to say, generated by infinite sets) as a part of the formalization of a hierarchy of homological algebra structures.


Theorem proving formal methods computer algebra program verification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Andrés, M., Lambán, L., Rubio, J.: Executing in Common Lisp, Proving in ACL2. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) MKM/CALCULEMUS 2007. LNCS (LNAI), vol. 4573, pp. 1–12. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  2. 2.
    Aransay, J., Ballarin, C., Rubio, J.: A Mechanized Proof of the Basic Perturbation Lemma. J. Autom. Reason. 40(4), 271–292 (2008)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Aransay, J., Ballarin, C., Rubio, J.: Generating certified code from formal proofs: a case study in homological algebra. Form. Asp. Comput. 22, 193–213 (2010)MATHCrossRefGoogle Scholar
  4. 4.
    Aransay, J., Domínguez, C.: Modelling Differential Structures in Proof Assistants: The Graded Case. In: Moreno-Díaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) EUROCAST 2009. LNCS, vol. 5717, pp. 203–210. Springer, Heidelberg (2009)Google Scholar
  5. 5.
    Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. In: Coq’Art: The Calculus of Inductive Constructions. Springer, Heidelberg (2004)Google Scholar
  6. 6.
    Boutin, S.: Using reflection to build efficient and certified decision procedures. In: Ito, T., Abadi, M. (eds.) TACS 1997. LNCS, vol. 1281, pp. 515–529. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  7. 7.
    Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. In: Proceedings of the fifth ACM SIGPLAN International Conference on Functional Programming, SIGPLAN Notices, vol. 35(9), pp. 268–279 (2000)Google Scholar
  8. 8.
    Coquand, T., Spiwack, A.: Constructively finite. In: Contribuciones científicas en honor de Mirian Andrés Gómez. Servicio de Publicaciones de la Universidad de La Rioja (2010)Google Scholar
  9. 9.
    Coquand, T., Spiwack, A.: Towards Constructive Homological Algebra in Type Theory. In: Kauers, M., Kerber, M., Miner, R., Windsteiger, W. (eds.) MKM/CALCULEMUS 2007. LNCS (LNAI), vol. 4573, pp. 40–54. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Domínguez, C., Lambán, L., Rubio, J.: Object-Oriented Institutions to Specify Symbolic Computation Systems. Rairo. Theor. Inf. Appl. 41, 191–214 (2007)MATHCrossRefGoogle Scholar
  11. 11.
    Domínguez, C., Rubio, J.: Effective Homology of Bicomplexes, formalized in Coq,
  12. 12.
    Dousson, X., Sergeraert, F., Siret, Y.: The Kenzo Program. Institut Fourier, Grenoble (1999), Google Scholar
  13. 13.
    Geuvers, H., Pollack, R., Wiedijk, F., Zwanenburg, J.: A constructive algebraic hierarchy in Coq. J. Symb. Comput. 34(4), 271–286 (2002)MATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Gonthier, G.: Formal Proof: The Four-Color Theorem. Notices of the AMS 55(11), 1382–1393 (2008)MATHMathSciNetGoogle Scholar
  15. 15.
    Gonthier, G., Mahboubi, A., Rideau, L., Tassi, E., Théry, L.: A Modular Formalisation of Finite Group Theory. In: Schneider, K., Brandt, J. (eds.) TPHOLs 2007. LNCS, vol. 4732, pp. 86–101. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  16. 16.
    Jacobson, N.: Basic Algebra II, 2nd edn. W.H. Freeman and Company, New York (1989)MATHGoogle Scholar
  17. 17.
    Lambán, L., Pascual, V., Rubio, J.: An Object-Oriented Interpretation of the EAT System. Appl. Algebra Eng. Commun. Comput. 14(3), 187–215 (2003)MATHCrossRefGoogle Scholar
  18. 18.
    Letouzey, L.: Extraction in Coq: An Overview. In: Beckmann, A., Dimitracopoulos, C., Löwe, B. (eds.) CiE 2008. LNCS, vol. 5028, pp. 359–369. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    LogiCal project. The Coq Proof Assistant (2010),
  20. 20.
    Mahboubi, A.: Implementing the cylindrical algebraic decomposition within the Coq system. Math. Struct. Comput. Sci. 17(1), 99–127 (2007)MATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    May, P.: Simplicial Objects in Algebraic Topology. Van Nostrand (1967)Google Scholar
  22. 22.
    Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL: A proof assistant for higher order logic, LNCS, vol. 2283. Springer, Heidelberg (2002)MATHGoogle Scholar
  23. 23.
    Rubio, J., Sergeraert, F.: Computing with locally effective matrices. Int. J. Comput. Math. 82(10), 1177–1189 (2005)MATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Rubio, J., Sergeraert, F.: Constructive Algebraic Topology. Bull. Sci. math. 126, 389–412 (2002)MATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Sergeraert, F.: The computability problem in Algebraic Topology. Adv. Math. 104, 1–29 (1994)MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • César Domínguez
    • 1
  • Julio Rubio
    • 1
  1. 1.Departamento de Matemáticas y ComputaciónUniversidad de La Rioja, Edificio VivesLogroño La RiojaSpain

Personalised recommendations