Definition var_upto (v: var): Ensemble var := fun x => Ile x v.

(* Specifications: *)
Lemma expr_bound_freshmax:
forall e, expr_bound (var_upto (freshmax_expr e)) e.
Lemma S_nat_of_P_id2pos_le:
forall x y, Ile x y -> S (nat_of_P (id2pos x)) <= S (nat_of_P (id2pos y)).
Lemma included_var_upto:
forall a b, Ile a b -> Included _ (var_upto a) (var_upto b).
Lemma pure_bound_freshmax:
forall a, pure_bound (var_upto (freshmax_pure_atom a)) a.