Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).Inductive quadraticAcc :
Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop :=
  | quadraticacc0 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 = One ->
      homographicAcc (a + c) (b + d) (e + g) (f + h) p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc0' :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 = One ->
      homographicAcc (a + b) (c + d) (e + f) (g + h) p1 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc1 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      quadratic_top_more a b c d e f g h ->
      quadraticAcc (a - e)%Z (b - f)%Z (c - g)%Z (d - h)%Z e f g h p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc2 :
      forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
      p1 <> One ->
      p2 <> One ->
      ~ quadratic_top_more a b c d e f g h ->
      quadratic_top_more e f g h a b c d ->
      quadraticAcc a b c d (e - a)%Z (f - b)%Z (g - c)%Z (h - d)%Z p1 p2 ->
      quadraticAcc a b c d e f g h p1 p2
  | quadraticacc3_II :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc a (a + b)%Z (a + c)%Z (a + b + c + d)%Z e 
        (e + f)%Z (e + g)%Z (e + f + g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (nR ys)
  | quadraticacc3_IO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b)%Z b (a + b + c + d)%Z (b + d)%Z 
        (e + f)%Z f (e + f + g + h)%Z (f + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (nR xs) (dL ys)
  | quadraticacc3_OI :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + c)%Z (a + b + c + d)%Z c (c + d)%Z 
        (e + g)%Z (e + f + g + h)%Z g (g + h)%Z xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (nR ys)
  | quadraticacc3_OO :
      forall (a b c d e f g h : Z) (xs ys : Qpositive),
      ~ quadratic_top_more a b c d e f g h ->
      ~ quadratic_top_more e f g h a b c d ->
      quadraticAcc (a + b + c + d)%Z (b + d)%Z (c + d)%Z d 
        (e + f + g + h)%Z (f + h)%Z (g + h)%Z h xs ys ->
      quadraticAcc a b c d e f g h (dL xs) (dL ys).

(* Specifications: *)
Lemma quadraticacc_0 : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> p1 = One -> homographicAcc (a + c) (b + d) (e + g) (f + h) p2.
Lemma quadraticacc_0' : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> p1 <> One -> p2 = One -> homographicAcc (a + b) (c + d) (e + f) (g + h) p1.
Lemma quadraticacc_1 : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> p1 <> One -> p2 <> One -> quadratic_top_more a b c d e f g h -> quadraticAcc (a - e) (b - f) (c - g) (d - h) e f g h p1 p2.
Lemma quadraticacc_2 : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> p1 <> One -> p2 <> One -> ~ quadratic_top_more a b c d e f g h -> quadratic_top_more e f g h a b c d -> quadraticAcc a b c d (e - a) (f - b) (g - c) (h - d) p1 p2.
Lemma quadraticacc_3_II : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> forall xs ys : Qpositive, p1 = nR xs -> p2 = nR ys -> ~ quadratic_top_more a b c d e f g h -> ~ quadratic_top_more e f g h a b c d -> quadraticAcc a (a + b) (a + c) (a + b + c + d) e (e + f) (e + g) (e + f + g + h) xs ys.
Lemma quadraticacc_3_IO : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> forall xs ys : Qpositive, p1 = nR xs -> p2 = dL ys -> ~ quadratic_top_more a b c d e f g h -> ~ quadratic_top_more e f g h a b c d -> quadraticAcc (a + b) b (a + b + c + d) (b + d) (e + f) f (e + f + g + h) (f + h) xs ys.
Lemma quadraticacc_3_OI : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> forall xs ys : Qpositive, p1 = dL xs -> p2 = nR ys -> ~ quadratic_top_more a b c d e f g h -> ~ quadratic_top_more e f g h a b c d -> quadraticAcc (a + c) (a + b + c + d) c (c + d) (e + g) (e + f + g + h) g (g + h) xs ys.
Lemma quadraticacc_3_OO : forall (a b c d e f g h : Z) (p1 p2 : Qpositive), quadraticAcc a b c d e f g h p1 p2 -> forall xs ys : Qpositive, p1 = dL xs -> p2 = dL ys -> ~ quadratic_top_more a b c d e f g h -> ~ quadratic_top_more e f g h a b c d -> quadraticAcc (a + b + c + d) (b + d) (c + d) d (e + f + g + h) (f + h) (g + h) h xs ys.