From c2dfffffb7586662c67e44a2d255a1a97ab0398b Mon Sep 17 00:00:00 2001 From: Josh Chen Date: Thu, 2 Apr 2020 17:57:48 +0200 Subject: Brand-spanking new version using Spartan infrastructure --- hott/Nat.thy | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 hott/Nat.thy (limited to 'hott/Nat.thy') diff --git a/hott/Nat.thy b/hott/Nat.thy new file mode 100644 index 0000000..f846dbf --- /dev/null +++ b/hott/Nat.thy @@ -0,0 +1,51 @@ +theory Nat +imports Spartan + +begin + +axiomatization + Nat :: \o\ and + zero :: \o\ ("0") and + suc :: \o \ o\ and + NatInd :: \(o \ o) \ o \ (o \ o \ o) \ o \ o\ +where + NatF: "Nat: U i" and + + Nat_zero: "0: Nat" and + + Nat_suc: "n: Nat \ suc n: Nat" and + + NatE: "\ + n: Nat; + n\<^sub>0: Nat; + \n. n: Nat \ C n: U i; + \n c. \n: Nat; c: C n\ \ f n c: C (suc n) + \ \ NatInd (\n. C n) n\<^sub>0 (\n c. f n c) n: C n" and + + Nat_comp_zero: "\ + n\<^sub>0: Nat; + \n. n: Nat \ C n: U i; + \n c. \n: Nat; c: C n\ \ f n c: C (suc n) + \ \ NatInd (\n. C n) n\<^sub>0 (\n c. f n c) 0 \ n\<^sub>0" and + + Nat_comp_suc: "\ + n: Nat; + n\<^sub>0: Nat; + \n. n: Nat \ C n: U i; + \n c. \n: Nat; c: C n\ \ f n c: C (suc n) + \ \ + NatInd (\n. C n) n\<^sub>0 (\n c. f n c) (suc n) \ + f n (NatInd (\n. C n) n\<^sub>0 (\n c. f n c) n)" + +lemmas + [intros] = NatF Nat_zero Nat_suc and + [elims] = NatE and + [comps] = Nat_comp_zero Nat_comp_suc + + +section \Basic arithmetic\ + +\ \TODO\ + + +end -- cgit v1.2.3