src/Pure/Isar/proof.ML
changeset 40960 9e54eb514a46
parent 40642 99c6ce92669b
child 41181 9240be8c8c69
equal deleted inserted replaced
40959:49765c1104d4 40960:9e54eb514a46
    74   val invoke_case: string * string option list * attribute list -> state -> state
    74   val invoke_case: string * string option list * attribute list -> state -> state
    75   val invoke_case_cmd: string * string option list * Attrib.src list -> state -> state
    75   val invoke_case_cmd: string * string option list * Attrib.src list -> state -> state
    76   val begin_block: state -> state
    76   val begin_block: state -> state
    77   val next_block: state -> state
    77   val next_block: state -> state
    78   val end_block: state -> state
    78   val end_block: state -> state
       
    79   val begin_notepad: Proof.context -> state
       
    80   val end_notepad: state -> Proof.context
    79   val proof: Method.text option -> state -> state Seq.seq
    81   val proof: Method.text option -> state -> state Seq.seq
    80   val defer: int option -> state -> state Seq.seq
    82   val defer: int option -> state -> state Seq.seq
    81   val prefer: int -> state -> state Seq.seq
    83   val prefer: int -> state -> state Seq.seq
    82   val apply: Method.text -> state -> state Seq.seq
    84   val apply: Method.text -> state -> state Seq.seq
    83   val apply_end: Method.text -> state -> state Seq.seq
    85   val apply_end: Method.text -> state -> state Seq.seq
   765   #> put_facts NONE;
   767   #> put_facts NONE;
   766 
   768 
   767 fun end_block state =
   769 fun end_block state =
   768   state
   770   state
   769   |> assert_forward
   771   |> assert_forward
       
   772   |> assert_bottom false
   770   |> close_block
   773   |> close_block
   771   |> assert_current_goal false
   774   |> assert_current_goal false
   772   |> close_block
   775   |> close_block
   773   |> export_facts state;
   776   |> export_facts state;
       
   777 
       
   778 
       
   779 (* global notepad *)
       
   780 
       
   781 val begin_notepad =
       
   782   init
       
   783   #> open_block
       
   784   #> map_context (Variable.set_body true)
       
   785   #> open_block;
       
   786 
       
   787 val end_notepad =
       
   788   assert_forward
       
   789   #> assert_bottom true
       
   790   #> close_block
       
   791   #> assert_current_goal false
       
   792   #> close_block
       
   793   #> context_of;
   774 
   794 
   775 
   795 
   776 (* sub-proofs *)
   796 (* sub-proofs *)
   777 
   797 
   778 fun proof opt_text =
   798 fun proof opt_text =