End positive2.
Section BUT_XY.
Variable Site : Set.
Hypothesis eq_site_dec : eq_dec Site.
Variable LS1 : list Site.
Variable LS2 : list Site.
Variable Data : Set.
Let Table2 := Site -> Site -> Data.
Variable f : Site -> Site -> Data -> Z.
Remark add_reduce2_1 :
forall x y z a : Z, x = a -> (x + (y + z))%Z = (a + y + z)%Z.
Remark add_reduce3 :
forall x y z a : Z, x = a -> y = z -> (x + y)%Z = (a + z)%Z.

(* Specifications: *)
Lemma sigma2_sigma2_but_x_y :
forall (s0 s1 : Site) (t : Table2),
only_once Site eq_site_dec s0 LS1 ->
only_once Site eq_site_dec s1 LS2 ->
sigma2_table Site LS1 LS2 Data f t =
(sigma2_but_table Site eq_site_dec LS1 LS2 Data s0 s1 f t +
f s0 s1 (t s0 s1))%Z.
Lemma sigma2_but_simpl :
forall (s0 s1 : Site) (t : Table2) (f g : Site -> Site -> Data -> Z),
(forall x y : Site, ~ (x = s0 /\ y = s1) -> f x y (t x y) = g x y (t x y)) ->
only_once Site eq_site_dec s0 LS1 ->
only_once Site eq_site_dec s1 LS2 ->
sigma2_but_table Site eq_site_dec LS1 LS2 Data s0 s1 f t =
sigma2_but_table Site eq_site_dec LS1 LS2 Data s0 s1 g t.