src/CCL/CCL.thy
changeset 69593 3dda49e08b9d
parent 63120 629a4c5e953e
child 74445 63a697f1fb8f
equal deleted inserted replaced
69592:a80d8ec6c998 69593:3dda49e08b9d
   265 val caseB_lemmas = mk_lemmas @{thms caseBs}
   265 val caseB_lemmas = mk_lemmas @{thms caseBs}
   266 
   266 
   267 val ccl_dstncts =
   267 val ccl_dstncts =
   268   let
   268   let
   269     fun mk_raw_dstnct_thm rls s =
   269     fun mk_raw_dstnct_thm rls s =
   270       Goal.prove_global @{theory} [] [] (Syntax.read_prop_global @{theory} s)
   270       Goal.prove_global \<^theory> [] [] (Syntax.read_prop_global \<^theory> s)
   271         (fn {context = ctxt, ...} => resolve_tac ctxt @{thms notI} 1 THEN eresolve_tac ctxt rls 1)
   271         (fn {context = ctxt, ...} => resolve_tac ctxt @{thms notI} 1 THEN eresolve_tac ctxt rls 1)
   272   in map (mk_raw_dstnct_thm caseB_lemmas)
   272   in map (mk_raw_dstnct_thm caseB_lemmas)
   273     (mk_dstnct_rls @{theory} ["bot","true","false","pair","lambda"]) end
   273     (mk_dstnct_rls \<^theory> ["bot","true","false","pair","lambda"]) end
   274 
   274 
   275 fun mk_dstnct_thms ctxt defs inj_rls xs =
   275 fun mk_dstnct_thms ctxt defs inj_rls xs =
   276   let
   276   let
   277     val thy = Proof_Context.theory_of ctxt;
   277     val thy = Proof_Context.theory_of ctxt;
   278     fun mk_dstnct_thm rls s =
   278     fun mk_dstnct_thm rls s =