src/HOL/Hyperreal/HyperNat.ML
changeset 12018 ec054019c910
parent 11713 883d559b0b8c
child 13438 527811f00c56
equal deleted inserted replaced
12017:78b8f9e13300 12018:ec054019c910
  1244               simpset()));
  1244               simpset()));
  1245 qed "hypnat_of_nat_eq_cancel";
  1245 qed "hypnat_of_nat_eq_cancel";
  1246 Addsimps [hypnat_of_nat_eq_cancel];
  1246 Addsimps [hypnat_of_nat_eq_cancel];
  1247 
  1247 
  1248 Goalw [hypnat_zero_def] 
  1248 Goalw [hypnat_zero_def] 
  1249      "hypreal_of_hypnat 0 = Numeral0";
  1249      "hypreal_of_hypnat 0 = 0";
  1250 by (simp_tac (HOL_ss addsimps
  1250 by (simp_tac (simpset() addsimps [hypreal_zero_def, hypreal_of_hypnat]) 1);
  1251              [zero_eq_numeral_0 RS sym, hypreal_zero_def]) 1); 
       
  1252 by (simp_tac (simpset() addsimps [hypreal_of_hypnat, real_of_nat_zero]) 1);
       
  1253 qed "hypreal_of_hypnat_zero";
  1251 qed "hypreal_of_hypnat_zero";
  1254 
  1252 
  1255 Goalw [hypnat_one_def] 
  1253 Goalw [hypnat_one_def] 
  1256      "hypreal_of_hypnat (1::hypnat) = Numeral1";
  1254      "hypreal_of_hypnat (1::hypnat) = 1";
  1257 by (simp_tac (HOL_ss addsimps
  1255 by (simp_tac (simpset() addsimps [hypreal_one_def, hypreal_of_hypnat]) 1);
  1258              [one_eq_numeral_1 RS sym, hypreal_one_def]) 1); 
       
  1259 by (simp_tac (simpset() addsimps [hypreal_of_hypnat, real_of_nat_one]) 1);
       
  1260 qed "hypreal_of_hypnat_one";
  1256 qed "hypreal_of_hypnat_one";
  1261 
  1257 
  1262 Goal "hypreal_of_hypnat (m + n) = hypreal_of_hypnat m + hypreal_of_hypnat n";
  1258 Goal "hypreal_of_hypnat (m + n) = hypreal_of_hypnat m + hypreal_of_hypnat n";
  1263 by (res_inst_tac [("z","m")] eq_Abs_hypnat 1);
  1259 by (res_inst_tac [("z","m")] eq_Abs_hypnat 1);
  1264 by (res_inst_tac [("z","n")] eq_Abs_hypnat 1);
  1260 by (res_inst_tac [("z","n")] eq_Abs_hypnat 1);
  1281 by (asm_simp_tac (simpset() addsimps 
  1277 by (asm_simp_tac (simpset() addsimps 
  1282     [hypreal_of_hypnat,hypreal_less,hypnat_less]) 1);
  1278     [hypreal_of_hypnat,hypreal_less,hypnat_less]) 1);
  1283 qed "hypreal_of_hypnat_less_iff";
  1279 qed "hypreal_of_hypnat_less_iff";
  1284 Addsimps [hypreal_of_hypnat_less_iff];
  1280 Addsimps [hypreal_of_hypnat_less_iff];
  1285 
  1281 
  1286 Goal "(hypreal_of_hypnat N = Numeral0) = (N = 0)";
  1282 Goal "(hypreal_of_hypnat N = 0) = (N = 0)";
  1287 by (simp_tac (simpset() addsimps [hypreal_of_hypnat_zero RS sym]) 1);
  1283 by (simp_tac (simpset() addsimps [hypreal_of_hypnat_zero RS sym]) 1);
  1288 qed "hypreal_of_hypnat_eq_zero_iff";
  1284 qed "hypreal_of_hypnat_eq_zero_iff";
  1289 Addsimps [hypreal_of_hypnat_eq_zero_iff];
  1285 Addsimps [hypreal_of_hypnat_eq_zero_iff];
  1290 
  1286 
  1291 Goal "ALL n. N <= n ==> N = (0::hypnat)";
  1287 Goal "ALL n. N <= n ==> N = (0::hypnat)";