Fixpoint Qhomographic_sign (a b c d : Z) (p : Qpositive) {struct p} :
  forall (H_Qhomographic_sg_denom_nonzero : Qhomographic_sg_denom_nonzero c d p),
  Z * (Z * (Z * (Z * Z)) * Qpositive).Scheme Qhomographic_sg_denom_nonzero_inv_dep :=
  Induction for Qhomographic_sg_denom_nonzero Sort Prop.

Lemma sg_sign : forall (a b c d : Z) (qp : Qpositive) (H_Qhomographic_sg_denom_nonzero : Qhomographic_sg_denom_nonzero c d qp), let (l1, L2) := Qhomographic_sign a b c d qp H_Qhomographic_sg_denom_nonzero in {l1 = 0%Z} + {l1 = 1%Z} + {l1 = (-1)%Z}.