Program Definition exactly {A} `{ageable A} (x: A) : pred A := necR x.

(* Specifications: *)
Lemma necR_level' {A} `{H : ageable A}: forall {w w': A}, necR w w' -> @necR _ ag_nat (level w) (level w').
Lemma exp_andp1 {A} `{ageable A}: forall B (p: B -> pred A) q, (exp p && q)%pred = (exp (fun x => p x && q))%pred.
Lemma exp_andp2 {A} `{HA: ageable A}: forall B p (q: B -> pred A), (p && exp q)%pred = (exp (fun x => p && q x))%pred.
Lemma app_ext {A: Type} `{ageable A} : forall (F G: A -> Prop) p1 p2 w, (F w = G w) -> app_pred (exist (hereditary age) F p1) w = app_pred (exist (hereditary age) G p2) w.
Lemma distrib_orp_andp {A}{agA: ageable A}: forall P Q R, (P||Q)&&R = (P&&R)||(Q&&R).