]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_tactics/nTacStatus.mli
milestone in basic_2, λδ-2A reconstructed
[helm.git] / helm / software / components / ng_tactics / nTacStatus.mli
index 6e4cc79ddb90405c20b5473f35f4d7a8f2f887f5..416306c021f3021638d437361ddb4c81db1fd19b 100644 (file)
@@ -63,6 +63,8 @@ val refine:
   'status * cic_term * cic_term (* status, term, type *)
 val apply_subst:
  #pstatus as 'status -> NCic.context -> cic_term -> 'status * cic_term
+val apply_subst_context :
+  #pstatus -> fix_projections:bool -> NCic.context -> NCic.context
 val fix_sorts: #pstatus as 'status -> cic_term -> 'status * cic_term
 val saturate :
  #pstatus as 'status -> ?delta:int -> cic_term -> 'status * cic_term * cic_term list
@@ -74,7 +76,10 @@ val mk_meta:
  #pstatus as 'status -> ?attrs:NCic.meta_attrs -> NCic.context ->
    [ `Decl of cic_term | `Def of cic_term ] -> NCicUntrusted.meta_kind ->
      'status * cic_term
-val instantiate: #pstatus as 'status -> int -> cic_term -> 'status
+
+(* default value for refine: true; you can use false if the term has already been refined with
+   the expected type for the meta (e.g. after a reduction tactic) *)
+val instantiate: #pstatus as 'status -> ?refine:bool -> int -> cic_term -> 'status
 val instantiate_with_ast: #pstatus as 'status -> int -> tactic_term -> 'status
 
 val select_term:
@@ -88,8 +93,6 @@ val mk_in_scope: #pstatus as 'status -> cic_term -> 'status * cic_term
 val mk_out_scope:
  int -> (#pstatus as 'status) -> cic_term -> 'status * cic_term
 
-val pp_status: #pstatus -> unit
-
 class type ['stack] g_status =
  object
   inherit g_pstatus
@@ -111,6 +114,8 @@ type 'status lowtactic = #lowtac_status as 'status -> int -> 'status
 
 class type tac_status = [Continuationals.Stack.t] status
 
+val pp_tac_status: #tac_status -> unit
+
 type 'status tactic = #tac_status as 'status -> 'status
 
 (* indexing facilities over cic_term based on inverse De Bruijn indexes *)