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: