Definition laterR_induction {A} `{ageable A} :=
@well_founded_induction A (transp A laterR) laterR_wf.

(* Specifications: *)
Lemma age_irreflexive {A}  `{ageable A}: forall x, age x x -> False.
Lemma laterR_irreflexive {A} `{HA: ageable A} : forall x, laterR x x -> False.
Lemma nec_refl_or_later {A} `{ageable A} : forall x y,
necR x y -> x = y \/ laterR x y.
Lemma necR_antisym {A} `{ageable A} : forall x y,
necR x y -> necR y x -> x = y.
Lemma age_later_nec {A} `{HA: ageable A} : forall x y z,
age x y ->
laterR x z ->
necR y z.
Lemma necR_level {A} `{X: ageable A} : forall (x y:A),
necR x y ->
level x >= level y.
Lemma laterR_level {A} `{X: ageable A} : forall (x y:A),
laterR x y ->
level x > level y.