]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/tactics/continuationals.mli
Constructors are closed with thier types when computing the signatur
[helm.git] / helm / software / components / tactics / continuationals.mli
index f9a17a9422ec389ca3e4c5aeff3bc36029289290..12681db63dff8366d410726a56a7f2776a23fbbf 100644 (file)
@@ -42,12 +42,28 @@ sig
   val find_goal: t -> goal            (** find "next" goal *)
   val is_empty: t -> bool             (** a singleton empty level *)
   val of_metasenv: Cic.metasenv -> t
+  val of_nmetasenv: (goal * 'a) list -> t
   val head_switches: t -> switch list (** top level switches *)
   val head_goals: t -> goal list      (** top level goals *)
   val head_tag: t -> tag              (** top level tag *)
   val shift_goals: t -> goal list     (** second level goals *)
   val open_goals: t -> goal list      (** all (Open) goals *)
   val goal_of_switch: switch -> goal
+  val filter_open : (goal * switch) list -> (goal * switch) list
+  val is_open: goal * switch -> bool
+  val is_fresh: goal * switch -> bool
+  val init_pos: (goal * switch) list -> (goal * switch) list 
+  val goal_of_loc: goal * switch -> goal
+  val switch_of_loc: goal * switch -> switch
+  val zero_pos : goal list -> (goal * switch) list
+  val deep_close: goal list -> t -> t
+
+
+  val ( @+ ) : 'a list -> 'a list -> 'a list
+  val ( @- ) : 'a list -> 'a list -> 'a list
+  val ( @~- ) : ('a * switch) list -> goal list -> ('a * switch) list
+
+
 
   (** @param int depth, depth 0 is the top of the stack *)
   val fold:
@@ -79,15 +95,10 @@ sig
   type output_status
 
   type tactic
-
-  val id_tactic : tactic
   val mk_tactic : (input_status -> output_status) -> tactic
   val apply_tactic : tactic -> input_status -> output_status
 
-  val get_status: input_status -> ProofEngineTypes.status
-  val get_proof: output_status -> ProofEngineTypes.proof
   val goals : output_status -> goal list * goal list (** opened, closed goals *)
-  val set_goals: goal list * goal list -> output_status -> output_status
   val get_stack : input_status -> Stack.t
   val set_stack : Stack.t -> output_status -> output_status