equal
deleted
inserted
replaced
225 typed_print_translation {* |
225 typed_print_translation {* |
226 let |
226 let |
227 fun tr' c = (c, fn show_sorts => fn T => fn ts => |
227 fun tr' c = (c, fn show_sorts => fn T => fn ts => |
228 if T = dummyT orelse not (! show_types) andalso can Term.dest_Type T then raise Match |
228 if T = dummyT orelse not (! show_types) andalso can Term.dest_Type T then raise Match |
229 else Syntax.const Syntax.constrainC $ Syntax.const c $ Syntax.term_of_typ show_sorts T); |
229 else Syntax.const Syntax.constrainC $ Syntax.const c $ Syntax.term_of_typ show_sorts T); |
230 in map tr' [@{const_syntax "HOL.one"}, @{const_syntax "HOL.zero"}] end; |
230 in map tr' [@{const_syntax HOL.one}, @{const_syntax HOL.zero}] end; |
231 *} -- {* show types that are presumably too general *} |
231 *} -- {* show types that are presumably too general *} |
232 |
232 |
233 |
233 |
234 subsection {* Fundamental rules *} |
234 subsection {* Fundamental rules *} |
235 |
235 |
911 ML {* |
911 ML {* |
912 structure Blast = BlastFun( |
912 structure Blast = BlastFun( |
913 struct |
913 struct |
914 type claset = Classical.claset |
914 type claset = Classical.claset |
915 val equality_name = @{const_name "op ="} |
915 val equality_name = @{const_name "op ="} |
916 val not_name = @{const_name "Not"} |
916 val not_name = @{const_name Not} |
917 val notE = @{thm HOL.notE} |
917 val notE = @{thm HOL.notE} |
918 val ccontr = @{thm HOL.ccontr} |
918 val ccontr = @{thm HOL.ccontr} |
919 val contr_tac = Classical.contr_tac |
919 val contr_tac = Classical.contr_tac |
920 val dup_intr = Classical.dup_intr |
920 val dup_intr = Classical.dup_intr |
921 val hyp_subst_tac = Hypsubst.blast_hyp_subst_tac |
921 val hyp_subst_tac = Hypsubst.blast_hyp_subst_tac |