Implementation of three types of ordinals in Coq

One can define an inductive type T in Coq by the rules: zero is in T, and 'cons a n b' is in T when a, b are in T and n is an integer. One can embed this type with an ordering, and show that the subset of ''normal'' elements is well-ordered, thus corresponds to some ordinal, namely epsilon-zero, the least epsilon-ordinal of Cantor. The same construction can be applied to the case where cons take one more argument of type T; in this case we get the Feferman-Schütte ordinal Gamma-zero. These two type were implemented by Castéran in Coq. In these paper we present an implementation using the ssreflect library. One can consider the case where cons takes four arguments of type T and use the ordering function proposed by Ackermann. This gives some large ordinal. The proof in Coq that it is a well-ordering matches exactly that of Ackermann. Every limit ordinal in this type is (constructively) the supremum of a strictly increasing function. Finally, we show how these types are related to ordinals defined in an implementation of the theory of sets of Bourbaki (a variant of Zermelo-Fraenkel). The code is available on the Web, under http://www-sop.inria.fr/marelle/gaia

Data and Resources

Additional Info

Field Value
Source https://inria.hal.science/hal-00911710
Author Grimm, José
Maintainer CCSD
Last Updated May 8, 2026, 00:43 (UTC)
Created May 8, 2026, 00:43 (UTC)
Identifier Report N°: RR-8407
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Mathematical, Reasoning and Software (MARELLE) ; Centre Inria d'Université Côte d'Azur ; Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)
creator Grimm, José
date 2013-05-08T00:00:00
harvest_object_id 751c7d96-727a-4428-b88d-715b8f651b8a
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-08-26T00:00:00
set_spec type:REPORT