Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 1999-07-04 19:34:48 -0700 (Sun, 04 Jul 1999)
Revision: 2778
Log message:

      Added Itt_sort for Alexey's demo.  Reading the .prla file is _really_ slow
      so I added the .prlb file as well.  We known that normalization is exponential:
      do we have to add a number to every term, or can we be smarter?
      
      In Base_dtactic I added two options:
         IntroArgsOption of (tactic_arg -> term -> term list) * term option
         ElimArgsOption of (tactic_arg -> term -> term list) * term option
      The function computes the term arguments for the rule, and the term option
      specifies the subterm to pass.  Example:
         interactive applyMember {| intro_resource [IntroArgsOption (infer_type_args, << 'f >>)] |} 'H ('A -> 'B) :
             [wf] sequent [squash] { 'H >- member{.'A -> 'B; 'f} } -->
             ...
             sequent ['ext] { 'H >- member{'T; .'f 'a} }
      This would use the type inference function "infer_type_args" to infer the type for 'f
      and use it as the term argument ('A -> 'B).  Of course, the refiner will complain if
      the infered type is not a simple function type.
      
      This is only used in Itt_sort right now, and it is experimental.  We want
      an option like this because type inference is such a common requirement.
      But this specification is too ad-hoc, and I will think about it further
      (suggestions welcome).
      

Changes  Path
+104 -36 metaprl/theories/base/base_dtactic.ml
+9 -1 metaprl/theories/base/base_dtactic.mli
+8 -0 metaprl/theories/base/typeinf.ml
+1 -0 metaprl/theories/base/typeinf.mli
+2 -1 metaprl/theories/itt/Makefile
+2 -2 metaprl/theories/itt/itt_dfun.ml
+4 -0 metaprl/theories/itt/itt_dfun.mli
+24 -4 metaprl/theories/itt/itt_fun.ml
+2 -2 metaprl/theories/itt/itt_rfun.ml
+4 -0 metaprl/theories/itt/itt_rfun.mli
Added metaprl/theories/itt/itt_sort.ml
Properties metaprl/theories/itt/itt_sort.ml
Added metaprl/theories/itt/itt_sort.mli
Properties metaprl/theories/itt/itt_sort.mli
Added metaprl/theories/itt/itt_sort.prla
Properties metaprl/theories/itt/itt_sort.prla
Binary metaprl/theories/itt/itt_sort.prlb
Properties metaprl/theories/itt/itt_sort.prlb