src/ZF/ex/BT.ML
changeset 11316 b4e71bd751e4
parent 6144 7d38744313c8
--- a/src/ZF/ex/BT.ML	Mon May 21 14:35:54 2001 +0200
+++ b/src/ZF/ex/BT.ML	Mon May 21 14:36:24 2001 +0200
@@ -8,7 +8,7 @@
 
 Addsimps bt.intrs;
 
-Goal "l : bt(A) ==> ALL x r. Br(x,l,r) ~= l";
+Goal "l \\<in> bt(A) ==> \\<forall>x r. Br(x,l,r) \\<noteq> l";
 by (induct_tac "l" 1);
 by Auto_tac;
 qed_spec_mp "Br_neq_left";
@@ -17,17 +17,17 @@
 val Br_iff = bt.mk_free "Br(a,l,r) = Br(a',l',r') <-> a=a' & l=l' & r=r'";
 
 (*An elimination rule, for type-checking*)
-val BrE = bt.mk_cases "Br(a,l,r) : bt(A)";
+val BrE = bt.mk_cases "Br(a,l,r) \\<in> bt(A)";
 
 (**  Lemmas to justify using "bt" in other recursive type definitions **)
 
-Goalw bt.defs "A<=B ==> bt(A) <= bt(B)";
+Goalw bt.defs "A \\<subseteq> B ==> bt(A) \\<subseteq> bt(B)";
 by (rtac lfp_mono 1);
 by (REPEAT (rtac bt.bnd_mono 1));
 by (REPEAT (ares_tac (univ_mono::basic_monos) 1));
 qed "bt_mono";
 
-Goalw (bt.defs@bt.con_defs) "bt(univ(A)) <= univ(A)";
+Goalw (bt.defs@bt.con_defs) "bt(univ(A)) \\<subseteq> univ(A)";
 by (rtac lfp_lowerbound 1);
 by (rtac (A_subset_univ RS univ_mono) 2);
 by (fast_tac (claset() addSIs [zero_in_univ, Inl_in_univ, Inr_in_univ,
@@ -39,19 +39,19 @@
 
 (*Type checking for recursor -- example only; not really needed*)
 val major::prems = goal BT.thy
-    "[| t: bt(A);    \
-\       c: C(Lf);       \
-\       !!x y z r s. [| x:A;  y:bt(A);  z:bt(A);  r:C(y);  s:C(z) |] ==> \
+    "[| t \\<in> bt(A);    \
+\       c \\<in> C(Lf);       \
+\       !!x y z r s. [| x \\<in> A;  y \\<in> bt(A);  z \\<in> bt(A);  r \\<in> C(y);  s \\<in> C(z) |] ==> \
 \                    h(x,y,z,r,s): C(Br(x,y,z))  \
-\    |] ==> bt_rec(c,h,t) : C(t)";
-    (*instead of induct_tac "t", since t: bt(A) isn't an assumption*)
+\    |] ==> bt_rec(c,h,t) \\<in> C(t)";
+    (*instead of induct_tac "t", since t \\<in> bt(A) isn't an assumption*)
 by (rtac (major RS bt.induct) 1);
 by (ALLGOALS (asm_simp_tac (simpset() addsimps prems)));
 qed "bt_rec_type";
 
 (** n_nodes **)
 
-Goal "t: bt(A) ==> n_nodes(t) : nat";
+Goal "t \\<in> bt(A) ==> n_nodes(t) \\<in> nat";
 by (induct_tac "t" 1);
 by Auto_tac;
 qed "n_nodes_type";
@@ -59,14 +59,14 @@
 
 (** n_leaves **)
 
-Goal "t: bt(A) ==> n_leaves(t) : nat";
+Goal "t \\<in> bt(A) ==> n_leaves(t) \\<in> nat";
 by (induct_tac "t" 1);
 by Auto_tac;
 qed "n_leaves_type";
 
 (** bt_reflect **)
 
-Goal "t: bt(A) ==> bt_reflect(t) : bt(A)";
+Goal "t \\<in> bt(A) ==> bt_reflect(t) \\<in> bt(A)";
 by (induct_tac "t" 1);
 by Auto_tac;
 qed "bt_reflect_type";
@@ -80,19 +80,19 @@
 
 (*** theorems about n_leaves ***)
 
-Goal "t: bt(A) ==> n_leaves(bt_reflect(t)) = n_leaves(t)";
+Goal "t \\<in> bt(A) ==> n_leaves(bt_reflect(t)) = n_leaves(t)";
 by (induct_tac "t" 1);
 by (ALLGOALS (asm_simp_tac (simpset() addsimps [add_commute, n_leaves_type])));
 qed "n_leaves_reflect";
 
-Goal "t: bt(A) ==> n_leaves(t) = succ(n_nodes(t))";
+Goal "t \\<in> bt(A) ==> n_leaves(t) = succ(n_nodes(t))";
 by (induct_tac "t" 1);
 by (ALLGOALS (asm_simp_tac (simpset() addsimps [add_succ_right])));
 qed "n_leaves_nodes";
 
 (*** theorems about bt_reflect ***)
 
-Goal "t: bt(A) ==> bt_reflect(bt_reflect(t))=t";
+Goal "t \\<in> bt(A) ==> bt_reflect(bt_reflect(t))=t";
 by (induct_tac "t" 1);
 by (ALLGOALS Asm_simp_tac);
 qed "bt_reflect_bt_reflect_ident";