src/Pure/Isar/skip_proof.ML
changeset 11732 139aaced13f4
parent 8807 0046be1769f9
child 11892 4a8834757140
equal deleted inserted replaced
11731:1a0c1ef86518 11732:139aaced13f4
    11   val quick_and_dirty: bool ref
    11   val quick_and_dirty: bool ref
    12   val local_skip_proof: ({kind: string, name: string, thm: thm} -> unit) * (thm -> unit)
    12   val local_skip_proof: ({kind: string, name: string, thm: thm} -> unit) * (thm -> unit)
    13     -> Proof.state -> Proof.state Seq.seq
    13     -> Proof.state -> Proof.state Seq.seq
    14   val global_skip_proof: Proof.state -> theory * {kind: string, name: string, thm: thm}
    14   val global_skip_proof: Proof.state -> theory * {kind: string, name: string, thm: thm}
    15   val prove_goalw_cterm: theory -> thm list -> cterm -> (thm list -> tactic list) -> thm
    15   val prove_goalw_cterm: theory -> thm list -> cterm -> (thm list -> tactic list) -> thm
       
    16   val make_thm: theory -> term -> thm
    16   val setup: (theory -> theory) list
    17   val setup: (theory -> theory) list
    17 end;
    18 end;
    18 
    19 
    19 structure SkipProof: SKIP_PROOF =
    20 structure SkipProof: SKIP_PROOF =
    20 struct
    21 struct
    56 fun prove_goalw_cterm thy rews ct tacs =
    57 fun prove_goalw_cterm thy rews ct tacs =
    57   Goals.prove_goalw_cterm rews ct
    58   Goals.prove_goalw_cterm rews ct
    58     (if ! quick_and_dirty then (K [cheat_tac thy]) else tacs);
    59     (if ! quick_and_dirty then (K [cheat_tac thy]) else tacs);
    59 
    60 
    60 
    61 
       
    62 (* make_thm *)
       
    63 
       
    64 fun make_thm thy t =
       
    65   prove_goalw_cterm thy [] (Thm.cterm_of (Theory.sign_of thy) t) (K []);
       
    66 
       
    67 
    61 (* theory setup *)
    68 (* theory setup *)
    62 
    69 
    63 val setup = [Theory.add_oracle (skip_proofN, any_thm)];
    70 val setup = [Theory.add_oracle (skip_proofN, any_thm)];
    64 
    71 
    65 
    72