(******** Isabelle/HoTT: Natural numbers Feb 2019 ********) theory Nat imports HoTT_Base begin axiomatization Nat :: t and zero :: t ("0") and succ :: "t \ t" and indNat :: "[t \ t, [t, t] \ t, t, t] \ t" where Nat_form: "Nat: U O" and Nat_intro_0: "0: Nat" and Nat_intro_succ: "n: Nat \ succ n: Nat" and Nat_elim: "\ a: C 0; n: Nat; C: Nat \ U i; \n c. \n: Nat; c: C n\ \ f n c: C (succ n) \ \ indNat C f a n: C n" and Nat_cmp_0: "\ a: C 0; C: Nat \ U i; \n c. \n: Nat; c: C n\ \ f n c: C (succ n) \ \ indNat C f a 0 \ a" and Nat_cmp_succ: "\ a: C 0; n: Nat; C: Nat \ U i; \n c. \n: Nat; c: C n\ \ f n c: C (succ n) \ \ indNat C f a (succ n) \ f n (indNat C f a n)" lemmas Nat_form [form] lemmas Nat_routine [intro] = Nat_form Nat_intro_0 Nat_intro_succ Nat_elim lemmas Nat_comp [comp] = Nat_cmp_0 Nat_cmp_succ end