aboutsummaryrefslogtreecommitdiff
path: root/Equal.thy
diff options
context:
space:
mode:
authorJosh Chen2018-08-07 12:30:59 +0200
committerJosh Chen2018-08-07 12:30:59 +0200
commitdc2730916482bd230f9bd5244b8b2cc9d005f69a (patch)
treec551ba8af9d5f573367061a9e2a30eb962dcd54c /Equal.thy
parentfdecdc58f50bdc4527eb7c10e37651e5fd9690aa (diff)
Old application syntax incompatible with Eisbach
Diffstat (limited to 'Equal.thy')
-rw-r--r--Equal.thy34
1 files changed, 17 insertions, 17 deletions
diff --git a/Equal.thy b/Equal.thy
index 2b49213..8bd7875 100644
--- a/Equal.thy
+++ b/Equal.thy
@@ -14,8 +14,8 @@ section \<open>Constants and syntax\<close>
axiomatization
Equal :: "[Term, Term, Term] \<Rightarrow> Term" and
- refl :: "Term \<Rightarrow> Term" ("(refl'(_'))" 1000) and
- indEqual :: "[Term, [Term, Term] \<Rightarrow> Typefam, Term \<Rightarrow> Term, Term, Term, Term] \<Rightarrow> Term" ("(1ind\<^sub>=[_])")
+ refl :: "Term \<Rightarrow> Term" and
+ indEqual :: "[Term \<Rightarrow> Term, Term, Term, Term] \<Rightarrow> Term" ("(1ind\<^sub>=)")
syntax
"_EQUAL" :: "[Term, Term, Term] \<Rightarrow> Term" ("(3_ =\<^sub>_/ _)" [101, 0, 101] 100)
@@ -28,32 +28,32 @@ translations
section \<open>Type rules\<close>
axiomatization where
- Equal_form: "\<And>i A a b. \<lbrakk>A : U(i); a : A; b : A\<rbrakk> \<Longrightarrow> a =\<^sub>A b : U(i)"
+ Equal_form: "\<And>i A a b. \<lbrakk>A: U(i); a: A; b: A\<rbrakk> \<Longrightarrow> a =\<^sub>A b : U(i)"
and
- Equal_intro: "\<And>A a. a : A \<Longrightarrow> refl(a) : a =\<^sub>A a"
+ Equal_intro: "\<And>A a. a : A \<Longrightarrow> refl(a): a =\<^sub>A a"
and
Equal_elim: "\<And>i A C f a b p. \<lbrakk>
- \<And>x y. \<lbrakk>x : A; y : A\<rbrakk> \<Longrightarrow> C x y: x =\<^sub>A y \<longrightarrow> U(i);
- \<And>x. x : A \<Longrightarrow> f x : C x x refl(x);
- a : A;
- b : A;
- p : a =\<^sub>A b
- \<rbrakk> \<Longrightarrow> ind\<^sub>=[A] C f a b p : C a b p"
+ \<And>x y. \<lbrakk>x: A; y: A\<rbrakk> \<Longrightarrow> C(x)(y): x =\<^sub>A y \<longrightarrow> U(i);
+ \<And>x. x: A \<Longrightarrow> f(x) : C(x)(x)(refl x);
+ a: A;
+ b: A;
+ p: a =\<^sub>A b
+ \<rbrakk> \<Longrightarrow> ind\<^sub>=(f)(a)(b)(p) : C(a)(b)(p)"
and
Equal_comp: "\<And>i A C f a. \<lbrakk>
- \<And>x y. \<lbrakk>x : A; y : A\<rbrakk> \<Longrightarrow> C x y: x =\<^sub>A y \<longrightarrow> U(i);
- \<And>x. x : A \<Longrightarrow> f x : C x x refl(x);
- a : A
- \<rbrakk> \<Longrightarrow> ind\<^sub>=[A] C f a a refl(a) \<equiv> f a"
+ \<And>x y. \<lbrakk>x: A; y: A\<rbrakk> \<Longrightarrow> C(x)(y): x =\<^sub>A y \<longrightarrow> U(i);
+ \<And>x. x: A \<Longrightarrow> f(x) : C(x)(x)(refl x);
+ a: A
+ \<rbrakk> \<Longrightarrow> ind\<^sub>=(f)(a)(a)(refl(a)) \<equiv> f(a)"
text "Admissible inference rules for equality type formation:"
axiomatization where
- Equal_form_cond1: "\<And>i A a b. a =\<^sub>A b : U(i) \<Longrightarrow> A : U(i)"
+ Equal_form_cond1: "\<And>i A a b. a =\<^sub>A b: U(i) \<Longrightarrow> A: U(i)"
and
- Equal_form_cond2: "\<And>i A a b. a =\<^sub>A b : U(i) \<Longrightarrow> a : A"
+ Equal_form_cond2: "\<And>i A a b. a =\<^sub>A b: U(i) \<Longrightarrow> a: A"
and
- Equal_form_cond3: "\<And>i A a b. a =\<^sub>A b : U(i) \<Longrightarrow> b : A"
+ Equal_form_cond3: "\<And>i A a b. a =\<^sub>A b: U(i) \<Longrightarrow> b: A"
lemmas Equal_rules [intro] = Equal_form Equal_intro Equal_elim Equal_comp
lemmas Equal_form_conds [intro] = Equal_form_cond1 Equal_form_cond2 Equal_form_cond3