src/HOL/Hyperreal/HyperNat.ML
changeset 14299 0b5c0b0a3eba
parent 14294 f4d806fd72ce
child 14370 b0064703967b
equal deleted inserted replaced
14298:e616f4bda3a2 14299:0b5c0b0a3eba
    46 
    46 
    47 Goalw [hypnatrel_def] "(x,x): hypnatrel";
    47 Goalw [hypnatrel_def] "(x,x): hypnatrel";
    48 by Auto_tac;
    48 by Auto_tac;
    49 qed "hypnatrel_refl";
    49 qed "hypnatrel_refl";
    50 
    50 
    51 Goalw [hypnatrel_def] "(x,y): hypnatrel --> (y,x):hypnatrel";
    51 Goal "(x,y): hypnatrel ==> (y,x):hypnatrel";
    52 by (auto_tac (claset() addIs [lemma_perm RS subst], simpset()));
    52 by (auto_tac (claset(), simpset() addsimps [hypnatrel_def, eq_commute]));
    53 qed_spec_mp "hypnatrel_sym";
    53 qed "hypnatrel_sym";
    54 
    54 
    55 Goalw [hypnatrel_def]
    55 Goalw [hypnatrel_def]
    56      "(x,y): hypnatrel --> (y,z):hypnatrel --> (x,z):hypnatrel";
    56      "(x,y): hypnatrel --> (y,z):hypnatrel --> (x,z):hypnatrel";
    57 by Auto_tac;
    57 by Auto_tac;
    58 by (Fuf_tac 1);
    58 by (Fuf_tac 1);
   948 by (Blast_tac 1);
   948 by (Blast_tac 1);
   949 qed "inv_hypnat_of_nat_image";
   949 qed "inv_hypnat_of_nat_image";
   950 
   950 
   951 Goalw [SHNat_def] 
   951 Goalw [SHNat_def] 
   952      "[| EX x. x: P; P <= Nats |] ==> EX Q. P = hypnat_of_nat ` Q";
   952      "[| EX x. x: P; P <= Nats |] ==> EX Q. P = hypnat_of_nat ` Q";
   953 by (Best_tac 1); 
   953 by (Blast_tac 1);
   954 qed "SHNat_hypnat_of_nat_image";
   954 qed "SHNat_hypnat_of_nat_image";
   955 
   955 
   956 Goalw [SHNat_def] 
   956 Goalw [SHNat_def] 
   957       "Nats = hypnat_of_nat ` (UNIV::nat set)";
   957       "Nats = hypnat_of_nat ` (UNIV::nat set)";
   958 by Auto_tac;
   958 by Auto_tac;
  1213 
  1213 
  1214 (*---------------------------------------------------------------
  1214 (*---------------------------------------------------------------
  1215     Embedding of the hypernaturals into the hyperreal
  1215     Embedding of the hypernaturals into the hyperreal
  1216  --------------------------------------------------------------*)
  1216  --------------------------------------------------------------*)
  1217 
  1217 
       
  1218 (*WARNING: FRAGILE!*)
  1218 Goal "(Ya : hyprel ``{%n. f(n)}) = \
  1219 Goal "(Ya : hyprel ``{%n. f(n)}) = \
  1219 \     ({n. f n = Ya n} : FreeUltrafilterNat)";
  1220 \     ({n. f n = Ya n} : FreeUltrafilterNat)";
  1220 by Auto_tac;
  1221 by Auto_tac;
  1221 qed "lemma_hyprel_FUFN";
  1222 qed "lemma_hyprel_FUFN";
  1222 
  1223