(* * Copyright (c) 2009-2010, Andrew Appel, Robert Dockins and Aquinas Hobor. * *)
Local Open Scope pred.

Lemma exists_contractive {A} `{ageable A} : forall B (X : pred A -> B -> pred A),
(forall x, (contractive (fun y => X y x))) ->
contractive (fun x => (exp (X x))).