Definition total_strict_order (R:relation T) : Prop :=
  forall x y:T, R x y \/ x = y \/ R y x.Record well_order (R:relation T) : Prop := {
  wo_well_founded: well_founded R;
  wo_total_strict_order: total_strict_order R
}.Record well_order (R:relation T) : Prop := {
  wo_well_founded: well_founded R;
  wo_total_strict_order: total_strict_order R
}.Record well_order (R:relation T) : Prop := {
  wo_well_founded: well_founded R;
  wo_total_strict_order: total_strict_order R
}.

(* Specifications: *)
Lemma wo_irrefl: forall R:relation T, well_order R -> (forall x:T, ~ R x x).
Lemma wo_antisym: forall R:relation T, well_order R -> (forall x y:T, R x y -> ~ R y x).
Lemma wo_transitive: forall R:relation T, well_order R -> transitive R.