src/Pure/meta_simplifier.ML
changeset 17714 1bdef3df9735
parent 17705 a5d146aca659
child 17723 ee5b42e3cbb4
equal deleted inserted replaced
17713:7efbe0ec9d4c 17714:1bdef3df9735
  1132    then warning ("Simplification depth " ^ string_of_int (!simp_depth))
  1132    then warning ("Simplification depth " ^ string_of_int (!simp_depth))
  1133    else ();
  1133    else ();
  1134    trace_cterm false "SIMPLIFIER INVOKED ON THE FOLLOWING TERM:" ss ct;
  1134    trace_cterm false "SIMPLIFIER INVOKED ON THE FOLLOWING TERM:" ss ct;
  1135    check_bounds ss ct;
  1135    check_bounds ss ct;
  1136    let val {thy, t, maxidx, ...} = Thm.rep_cterm ct
  1136    let val {thy, t, maxidx, ...} = Thm.rep_cterm ct
  1137        val res = bottomc (mode, prover, thy, maxidx) ss ct
  1137        val res = bottomc (mode, Option.map Drule.flexflex_unique oo prover, thy, maxidx) ss ct
  1138          handle THM (s, _, thms) =>
  1138          handle THM (s, _, thms) =>
  1139          error ("Exception THM was raised in simplifier:\n" ^ s ^ "\n" ^
  1139          error ("Exception THM was raised in simplifier:\n" ^ s ^ "\n" ^
  1140            Pretty.string_of (Display.pretty_thms thms))
  1140            Pretty.string_of (Display.pretty_thms thms))
  1141    in dec simp_depth; res end
  1141    in dec simp_depth; res end
  1142   ) handle exn => (dec simp_depth; raise exn);
  1142   ) handle exn => (dec simp_depth; raise exn);