(** - Some stuff I thought would be useful some day but wasn't *)

Definition before (N N' : nat) (i : fin N) (j : fin N') := index i < index j.Definition after (N N' : nat) (i : fin N) (j : fin N') := index i > index j.Definition notbefore (N N' : nat) (i : fin N) (j : fin N') :=
  index i = index j \/ after i j.Definition notafter (N N' : nat) (i : fin N) (j : fin N') :=
  before i j \/ index i = index j.

Lemma decide_fin : forall (N N' : nat) (i : fin N) (i' : fin N'), before i i' \/ index i = index i' \/ after i i'.