fact: Definition BZsum_v1 x y := let f := fun x => Yo (inc x BZp) (J \0c (BZ_val x)) (J (BZ_val x) \0c) in let g := fun x => Yo ((P x) <=c (Q x)) (BZ_of_nat((Q x) -c (P x))) (BZm_of_nat ((P x) -c (Q x))) in let h := fun x y => J ( (P x) +c (P y)) ( (Q x) +c (Q y)) in g (h (f x) (f y)).
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)