(* returns the identity relocation list, which is the list [1 ; ... ; n] *)
(* where n = List.length [canonical_context] *)
(*CSC: ma mi basta la lunghezza del contesto canonico!!!*)
-let identity_relocation_list_for_metavariable canonical_context =
+let identity_relocation_list_for_metavariable ?(start = 1) canonical_context =
let canonical_context_length = List.length canonical_context in
let rec aux =
function
| (n,None::tl) -> None::(aux ((n+1),tl))
| (n,_::tl) -> (Some (Cic.Rel n))::(aux ((n+1),tl))
in
- aux (1,canonical_context)
+ aux (start,canonical_context)
(* Returns the first meta whose number is above the *)
(* number of the higher meta. *)