Section projection.
Variable A : Set.
Variable P : A -> Prop.
Definition projP1 (H : sig P) := let (x, h) := H in x.
Definition projP2 (H : sig P) :=
let (x, h) as H return (P (projP1 H)) := H in h.
End projection.
(*###########################################################################*)
(* Declaring some relations on natural numbers for stepl and stepr tactics.  *)
(*###########################################################################*)

Lemma neq_stepl:forall (x y z:nat), x<>y -> x=z -> z<>y.