src/Pure/drule.ML
changeset 6995 d824a86266a9
parent 6946 309276732ee1
child 7248 322151fe6f02
equal deleted inserted replaced
6994:f22a51ed9f11 6995:d824a86266a9
    83   include BASIC_DRULE
    83   include BASIC_DRULE
    84   val compose_single	: thm * int * thm -> thm
    84   val compose_single	: thm * int * thm -> thm
    85   val triv_goal		: thm
    85   val triv_goal		: thm
    86   val rev_triv_goal	: thm
    86   val rev_triv_goal	: thm
    87   val mk_triv_goal      : cterm -> thm
    87   val mk_triv_goal      : cterm -> thm
       
    88   val mk_cgoal		: cterm -> cterm
       
    89   val assume_goal	: cterm -> thm
    88   val tvars_of_terms	: term list -> (indexname * sort) list
    90   val tvars_of_terms	: term list -> (indexname * sort) list
    89   val vars_of_terms	: term list -> (indexname * typ) list
    91   val vars_of_terms	: term list -> (indexname * typ) list
    90   val tvars_of		: thm -> (indexname * sort) list
    92   val tvars_of		: thm -> (indexname * sort) list
    91   val vars_of		: thm -> (indexname * typ) list
    93   val vars_of		: thm -> (indexname * typ) list
    92   val unvarifyT		: thm -> thm
    94   val unvarifyT		: thm -> thm
   612 in
   614 in
   613   val triv_goal = store_thm "triv_goal" (Thm.equal_elim (Thm.symmetric G_def) (Thm.assume A));
   615   val triv_goal = store_thm "triv_goal" (Thm.equal_elim (Thm.symmetric G_def) (Thm.assume A));
   614   val rev_triv_goal = store_thm "rev_triv_goal" (Thm.equal_elim G_def (Thm.assume G));
   616   val rev_triv_goal = store_thm "rev_triv_goal" (Thm.equal_elim G_def (Thm.assume G));
   615 end;
   617 end;
   616 
   618 
       
   619 val mk_cgoal = Thm.capply (Thm.cterm_of proto_sign (Const ("Goal", propT --> propT)));
       
   620 fun assume_goal ct = Thm.assume (mk_cgoal ct) RS rev_triv_goal;
       
   621 
   617 
   622 
   618 
   623 
   619 (** variations on instantiate **)
   624 (** variations on instantiate **)
   620 
   625 
   621 (* collect vars *)
   626 (* collect vars *)