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.

Lemma Zgt_ge_plus_plus : forall m n p q : Z, (m > n)%Z -> (p >= q)%Z -> (m + p > n + q)%Z.