src/HOL/Tools/ATP_Manager/atp_minimal.ML
changeset 35865 2f8fb5242799
parent 35826 1590abc3d42a
child 35866 513074557e06
equal deleted inserted replaced
35843:23908b4dbc2f 35865:2f8fb5242799
    12      the int component of the result should then be removed: *)
    12      the int component of the result should then be removed: *)
    13   val minimalize: ATP_Wrapper.prover -> string -> int -> Proof.state ->
    13   val minimalize: ATP_Wrapper.prover -> string -> int -> Proof.state ->
    14     (string * thm list) list -> ((string * thm list) list * int) option * string
    14     (string * thm list) list -> ((string * thm list) list * int) option * string
    15 end
    15 end
    16 
    16 
    17 structure ATP_Minimal: ATP_MINIMAL =
    17 structure ATP_Minimal : ATP_MINIMAL =
    18 struct
    18 struct
    19 
    19 
    20 (* Linear minimization *)
    20 (* Linear minimization *)
    21 
    21 
    22 fun lin_gen_minimize p s =
    22 fun lin_gen_minimize p s =
   168           string_of_int time_limit ^ " seconds. Call atp_minimize [time=...] ")
   168           string_of_int time_limit ^ " seconds. Call atp_minimize [time=...] ")
   169     | (Error, msg) =>
   169     | (Error, msg) =>
   170         (NONE, "Error in prover: " ^ msg)
   170         (NONE, "Error in prover: " ^ msg)
   171     | (Failure, _) =>
   171     | (Failure, _) =>
   172         (NONE, "Failure: No proof with the theorems supplied"))
   172         (NONE, "Failure: No proof with the theorems supplied"))
   173     handle Sledgehammer_HOL_Clause.TOO_TRIVIAL =>
   173     handle Sledgehammer_HOL_Clause.TRIVIAL =>
   174         (SOME ([], 0), "Trivial: Try this command: " ^ Markup.markup Markup.sendback "apply metis")
   174         (SOME ([], 0), "Trivial: Try this command: " ^ Markup.markup Markup.sendback "apply metis")
   175       | ERROR msg => (NONE, "Error: " ^ msg)
   175       | ERROR msg => (NONE, "Error: " ^ msg)
   176   end
   176   end
   177 
   177 
   178 
   178