Definition Qpositive2 := (Qpositive * Qpositive)%type.
Definition bin2_lt (x y : Qpositive2) :=
let (p1, p2) := x in let (p1', p2) := y in bin_lt p1 p1'.
Definition bin2_eq (x y : Qpositive2) :=
let (p1, p2) := x in let (p1', p2) := y in p1 = p1'.

(* Specifications: *)
Lemma bin2_lt_is_irreflexive : forall x : Qpositive2, ~ bin2_lt x x.
Lemma bin2_lt_is_transitive :
forall x y z : Qpositive2, bin2_lt x y -> bin2_lt y z -> bin2_lt x z.
Lemma bin2_lt_is_order : is_order Qpositive2 bin2_lt.
Lemma bin2_eq_is_reflexive : forall x : Qpositive2, bin2_eq x x.
Lemma bin2_eq_is_symmetric :
forall x y : Qpositive2, bin2_eq x y -> bin2_eq y x.
Lemma bin2_eq_is_transitive :
forall x y z : Qpositive2, bin2_eq x y -> bin2_eq y z -> bin2_eq x z.
Lemma bin2_eq_is_equality : is_equality Qpositive2 bin2_eq.
Lemma bin2_lt_is_wf : wf_ind Qpositive2 bin2_lt.
Lemma bin2_lt_is_well_def_rht : is_well_def_rht Qpositive2 bin2_lt bin2_eq.
Definition Qpositive2_as_well_ordering :=
Build_well_ordering Qpositive2 bin2_lt bin2_eq bin2_lt_is_order
bin2_eq_is_equality bin2_lt_is_wf bin2_lt_is_well_def_rht.
Lemma octet_lt_wf_rec_without_zeros_and_One :
forall
P : Z -> Z -> Z -> Z -> Z -> Z -> Z -> Z -> Qpositive -> Qpositive -> Prop,
(forall (a b c d e f g h : Z_pos) (q1 q2 : Qpositive),
(forall (k l r s t u v w : Z_pos) (p1 p2 : Qpositive),
octet_lt k l r s t u v w p1 p2 a b c d e f g h q1 q2 ->
P k l r s t u v w p1 p2) -> P a b c d e f g h q1 q2) ->
forall (a b c d e f g h : Z_pos) (q1 q2 : Qpositive),
P a b c d e f g h q1 q2.
Lemma quadraticAcc_wf :
forall (a b c d e f g h : Z) (p1 p2 : Qpositive),
(0 < a + b + c + d)%Z ->
(0 < e + f + g + h)%Z ->
(0 <= a)%Z ->
(0 <= b)%Z ->
(0 <= c)%Z ->
(0 <= d)%Z ->
(0 <= e)%Z ->
(0 <= f)%Z -> (0 <= g)%Z -> (0 <= h)%Z -> quadraticAcc a b c d e f g h p1 p2.