Definition h_sign (a b c d : Z) (p : Qpositive)
  (H_Qhomographic_sg_denom_nonzero : Qhomographic_sg_denom_nonzero c d p) :=
  let (l1, L2) :=
      Qhomographic_sign a b c d p H_Qhomographic_sg_denom_nonzero in
  l1.

(* Specifications: *)
Lemma sg_sign_dec : forall (a b c d : Z) (p : Qpositive) (H_Qhomographic_sg_denom_nonzero : Qhomographic_sg_denom_nonzero c d p), {h_sign a b c d p H_Qhomographic_sg_denom_nonzero = 0%Z} + {h_sign a b c d p H_Qhomographic_sg_denom_nonzero = 1%Z} + {h_sign a b c d p H_Qhomographic_sg_denom_nonzero = (-1)%Z}.