From 9b17aac85aa650a7a9d6463d3d01f1eb228d4572 Mon Sep 17 00:00:00 2001 From: Josh Chen Date: Tue, 11 Sep 2018 08:59:16 +0200 Subject: Go back to higher-order application notation --- HoTT_Base.thy | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'HoTT_Base.thy') diff --git a/HoTT_Base.thy b/HoTT_Base.thy index 4e1a9be..a5b88fd 100644 --- a/HoTT_Base.thy +++ b/HoTT_Base.thy @@ -16,8 +16,6 @@ text "Meta syntactic type for object-logic types and terms." typedecl Term -section \Judgments\ - text " Formalize the typing judgment \a: A\. For judgmental/definitional equality we use the existing Pure equality \\\ and hence do not need to define a separate judgment for it. @@ -38,13 +36,13 @@ axiomatization lt :: "[Ord, Ord] \ prop" (infix "<" 999) and leq :: "[Ord, Ord] \ prop" (infix "\" 999) where - Ord_lt_min: "\n. O < S(n)" + Ord_lt_min: "\n. O < S n" and - Ord_lt_monotone: "\m n. m < n \ S(m) < S(n)" + Ord_lt_monotone: "\m n. m < n \ S m < S n" and Ord_leq_min: "\n. O \ n" and - Ord_leq_monotone: "\m n. m \ n \ S(m) \ S(n)" + Ord_leq_monotone: "\m n. m \ n \ S m \ S n" lemmas Ord_rules [intro] = Ord_lt_min Ord_lt_monotone Ord_leq_min Ord_leq_monotone \ \Enables \standard\ to automatically solve inequalities.\ @@ -54,9 +52,9 @@ text "Define the universe types." axiomatization U :: "Ord \ Term" where - U_hierarchy: "\i j. i < j \ U(i): U(j)" + U_hierarchy: "\i j. i < j \ U i: U j" and - U_cumulative: "\A i j. \A: U(i); i \ j\ \ A: U(j)" + U_cumulative: "\A i j. \A: U i; i \ j\ \ A: U j" text " The rule \U_cumulative\ is very unsafe: if used as-is it will usually lead to an infinite rewrite loop! @@ -71,7 +69,7 @@ text " " abbreviation (input) constrained :: "[Term \ Term, Term, Term] \ prop" ("(1_: _ \ _)") - where "f: A \ B \ (\x. x : A \ f(x): B)" + where "f: A \ B \ (\x. x : A \ f x: B)" text " The above is used to define type families, which are constrained meta-lambdas \P: A \ B\ where \A\ and \B\ are small types. -- cgit v1.2.3