let rec change_term_vars c =
map (change_arterm_vars c)
and change_arterm_vars c =
function
| TTerm term -> TTerm (change_term_vars c term)
| TVariable x -> TVariable (
try
List.assq x c
with Not_found -> x)