let rec libre_texp = function Tint -> [] | Tvar n -> [ n ] | Tarrow (t1, t2) -> libre_texp t1 @ libre_texp t2;;