Generate fresh variables on demand
type var
The type of variables.
type t
A type of state for creating fresh variables.
val create : unit ‑> t
Create a fresh variable.
val fresh : t ‑> var
Create a fresh variable using an existing variable as base. TODO: need some explaining, about the difference with create.