Definition same_ratio (a b c d e f g h : Z) :=
  (a * f)%Z = (b * e)%Z /\
  (b * g)%Z = (c * f)%Z /\
  (c * h)%Z = (d * g)%Z /\
  (a * g)%Z = (c * e)%Z /\ (a * h)%Z = (d * e)%Z /\ (b * h)%Z = (d * f)%Z.

Lemma Qquadratic_sign_pos_2 : forall (a b c d e f g h : Z) (p1 p2 : Qpositive) (H_Qquadratic_sg_denom_nonzero : Qquadratic_sg_denom_nonzero e f g h p1 p2) (na nb nc nd ne nf ng nh : Z) (np1 np2 : Qpositive), Qquadratic_sign a b c d e f g h p1 p2 H_Qquadratic_sg_denom_nonzero = (1%Z, (na, (nb, (nc, nd)), (ne, (nf, (ng, nh))), (np1, np2))) -> {(0 <= na)%Z /\ (0 <= nb)%Z /\ (0 <= nc)%Z /\ (0 <= nd)%Z /\ (0 <= ne)%Z /\ (0 <= nf)%Z /\ (0 <= ng)%Z /\ (0 <= nh)%Z} + {(na <= 0)%Z /\ (nb <= 0)%Z /\ (nc <= 0)%Z /\ (nd <= 0)%Z /\ (ne <= 0)%Z /\ (nf <= 0)%Z /\ (ng <= 0)%Z /\ (nh <= 0)%Z} + {np1 = One /\ (0 <= na + nc)%Z /\ (0 <= nb + nd)%Z /\ (0 <= ne + ng)%Z /\ (0 <= nf + nh)%Z} + {np1 = One /\ (na + nc <= 0)%Z /\ (nb + nd <= 0)%Z /\ (ne + ng <= 0)%Z /\ (nf + nh <= 0)%Z} + {np1 = One /\ np2 = One} + {np1 <> One /\ np2 = One /\ (0 <= na + nb)%Z /\ (0 <= nc + nd)%Z /\ (0 <= ne + nf)%Z /\ (0 <= ng + nh)%Z} + {np1 <> One /\ np2 = One /\ (na + nb <= 0)%Z /\ (nc + nd <= 0)%Z /\ (ne + nf <= 0)%Z /\ (ng + nh <= 0)%Z}.