Variable bernoulli : R -> O bool. let geometric (p:R) : O nat := let berp : O bool := bernoulli p in fix geomp prob "Ens_geom p" variant "Lt_geom p" : nat := sample b from berp in eif b then Zero else sample x from geomp in Succ x .