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

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