src/HOL/Tools/refute_isar.ML
changeset 15570 8d8c70b41bab
parent 14454 8a8330bef1f8
child 17057 0934ac31985f
equal deleted inserted replaced
15569:1b3115d1a8df 15570:8d8c70b41bab
    46 				(let
    46 				(let
    47 					val (parms, subgoal) = args
    47 					val (parms, subgoal) = args
    48 					val thy              = (Toplevel.theory_of state)
    48 					val thy              = (Toplevel.theory_of state)
    49 					val thm              = ((snd o snd) (Proof.get_goal (Toplevel.proof_of state)))
    49 					val thm              = ((snd o snd) (Proof.get_goal (Toplevel.proof_of state)))
    50 				in
    50 				in
    51 					Refute.refute_subgoal thy (if_none parms []) thm ((if_none subgoal 1)-1)
    51 					Refute.refute_subgoal thy (getOpt (parms, [])) thm ((getOpt (subgoal, 1))-1)
    52 				end)
    52 				end)
    53 			);
    53 			);
    54 
    54 
    55 	fun refute_parser tokens = (refute_scan_args tokens) |>> refute_trans;
    55 	fun refute_parser tokens = (refute_scan_args tokens) |>> refute_trans;
    56 
    56 
    77 			fun add_params (thy, [])    = thy
    77 			fun add_params (thy, [])    = thy
    78 			  | add_params (thy, p::ps) = add_params (Refute.set_default_param p thy, ps)
    78 			  | add_params (thy, p::ps) = add_params (Refute.set_default_param p thy, ps)
    79 		in
    79 		in
    80 			Toplevel.theory (fn thy =>
    80 			Toplevel.theory (fn thy =>
    81 				let
    81 				let
    82 					val thy'               = add_params (thy, (if_none args []))
    82 					val thy'               = add_params (thy, (getOpt (args, [])))
    83 					val new_default_params = Refute.get_default_params thy'
    83 					val new_default_params = Refute.get_default_params thy'
    84 					val output             = if new_default_params=[] then "none" else (space_implode "\n" (map (fn (name,value) => name ^ "=" ^ value) new_default_params))
    84 					val output             = if new_default_params=[] then "none" else (space_implode "\n" (map (fn (name,value) => name ^ "=" ^ value) new_default_params))
    85 				in
    85 				in
    86 					writeln ("Default parameters for 'refute':\n" ^ output);
    86 					writeln ("Default parameters for 'refute':\n" ^ output);
    87 					thy'
    87 					thy'