equal
deleted
inserted
replaced
32 val In1_eq = thm "In1_eq"; |
32 val In1_eq = thm "In1_eq"; |
33 val In0_not_In1 = thm "In0_not_In1"; |
33 val In0_not_In1 = thm "In0_not_In1"; |
34 val In1_not_In0 = thm "In1_not_In0"; |
34 val In1_not_In0 = thm "In1_not_In0"; |
35 val Un_assoc = thm "Un_assoc"; |
35 val Un_assoc = thm "Un_assoc"; |
36 val Collect_disj_eq = thm "Collect_disj_eq"; |
36 val Collect_disj_eq = thm "Collect_disj_eq"; |
37 val empty_def = thm "empty_def"; |
37 val Collect_False_empty = @{thm empty_def [THEN sym, THEN eq_reflection]}; |
38 val empty_iff = thm "empty_iff"; |
38 val empty_iff = thm "empty_iff"; |
39 |
39 |
40 open DatatypeAux; |
40 open DatatypeAux; |
41 open NominalAtoms; |
41 open NominalAtoms; |
42 |
42 |
1015 if null dts then HOLogic.mk_set atomT [] |
1015 if null dts then HOLogic.mk_set atomT [] |
1016 else foldr1 (HOLogic.mk_binop @{const_name Un}) (map supp args2))))) |
1016 else foldr1 (HOLogic.mk_binop @{const_name Un}) (map supp args2))))) |
1017 (fn _ => |
1017 (fn _ => |
1018 simp_tac (HOL_basic_ss addsimps (supp_def :: |
1018 simp_tac (HOL_basic_ss addsimps (supp_def :: |
1019 Un_assoc :: de_Morgan_conj :: Collect_disj_eq :: finite_Un :: |
1019 Un_assoc :: de_Morgan_conj :: Collect_disj_eq :: finite_Un :: |
1020 symmetric empty_def :: finite_emptyI :: simp_thms @ |
1020 Collect_False_empty :: finite_emptyI :: simp_thms @ |
1021 abs_perm @ abs_fresh @ inject_thms' @ perm_thms')) 1) |
1021 abs_perm @ abs_fresh @ inject_thms' @ perm_thms')) 1) |
1022 in |
1022 in |
1023 (supp_thm, |
1023 (supp_thm, |
1024 Goal.prove_global thy8 [] [] (augment_sort thy8 pt_cp_sort |
1024 Goal.prove_global thy8 [] [] (augment_sort thy8 pt_cp_sort |
1025 (HOLogic.mk_Trueprop (HOLogic.mk_eq |
1025 (HOLogic.mk_Trueprop (HOLogic.mk_eq |