src/HOL/Tools/set_comprehension_pointfree.ML
changeset 60696 8304fb4fb823
parent 59621 291934bac95e
child 60781 2da59cdf531c
equal deleted inserted replaced
60695:757549b4bbe6 60696:8304fb4fb823
   439       THEN' REPEAT_DETERM o resolve_tac ctxt @{thms exI}
   439       THEN' REPEAT_DETERM o resolve_tac ctxt @{thms exI}
   440       THEN' resolve_tac ctxt @{thms conjI} THEN' resolve_tac ctxt @{thms refl} THEN' assume_tac ctxt
   440       THEN' resolve_tac ctxt @{thms conjI} THEN' resolve_tac ctxt @{thms refl} THEN' assume_tac ctxt
   441       THEN' REPEAT_DETERM o eresolve_tac ctxt @{thms exE}
   441       THEN' REPEAT_DETERM o eresolve_tac ctxt @{thms exE}
   442       THEN' eresolve_tac ctxt @{thms conjE}
   442       THEN' eresolve_tac ctxt @{thms conjE}
   443       THEN' REPEAT_DETERM o eresolve_tac ctxt @{thms Pair_inject}
   443       THEN' REPEAT_DETERM o eresolve_tac ctxt @{thms Pair_inject}
   444       THEN' Subgoal.FOCUS (fn {prems, ...} =>
   444       THEN' Subgoal.FOCUS (fn {prems, context = ctxt', ...} =>
   445         (* FIXME inner context!? *)
   445         simp_tac (put_simpset HOL_basic_ss ctxt' addsimps (filter is_eq prems)) 1) ctxt
   446         simp_tac (put_simpset HOL_basic_ss ctxt addsimps (filter is_eq prems)) 1) ctxt
       
   447       THEN' TRY o assume_tac ctxt
   446       THEN' TRY o assume_tac ctxt
   448   in
   447   in
   449     case try mk_term (Thm.term_of ct) of
   448     case try mk_term (Thm.term_of ct) of
   450       NONE => Thm.reflexive ct
   449       NONE => Thm.reflexive ct
   451     | SOME t' =>
   450     | SOME t' =>