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.