reserve R,R1 for commutative Ring;
reserve A,B for non degenerated commutative Ring;
reserve o,o1,o2 for object;
reserve r,r1,r2 for Element of R;
reserve a,a1,a2,b,b1 for Element of A;
reserve f for Function of R, R1;
reserve p for Element of Spectrum A;
reserve S for non empty multiplicatively-closed Subset of R;
reserve u,v,w,x,y,z for Element of Frac(S);

theorem Th28:
  x,u Fr_Eq S & y,v Fr_Eq S implies Fracadd(x,y),Fracadd(u,v) Fr_Eq S
   proof
     assume that
A1:  x,u Fr_Eq S and
A2:  y,v Fr_Eq S;
     consider s1 being Element of R such that
A3:  s1 in S and
A4:  (x`1 * u`2 - u`1 * x`2) * s1 = 0.R by A1;
     consider s2 being Element of R such that
A5:  s2 in S and
A6:  (y`1 * v`2 - v`1 * y`2) * s2 = 0.R by A2;
     reconsider z = Fracadd(x,y) as Element of Frac(S);
     reconsider w = Fracadd(u,v) as Element of Frac(S);
A7:  (x`1*u`2)*(y`2*v`2) = (x`1*u`2)*(y`2*v`2) + 0.R
     .= (x`1*u`2)*(y`2*v`2)+(-(u`1*x`2)*(y`2*v`2) + (u`1*x`2)*(y`2*v`2))
     by RLVECT_1:5
     .= (x`1*u`2)*(y`2*v`2) -(u`1*x`2)*(y`2*v`2) + (u`1*x`2)*(y`2*v`2)
     by RLVECT_1:def 3
     .= (x`1*u`2 - u`1*x`2)*(y`2*v`2) + (u`1*x`2)*(y`2*v`2) by VECTSP_1:13;
     reconsider t = u`1*x`2*y`2*v`2 as Element of R;
A8:  u`1*v`2*x`2*y`2 = u`1*x`2*v`2*y`2 by GROUP_1:def 3
     .= t by GROUP_1:def 3;
A9:  y`1*x`2*u`2*v`2 = y`1*(x`2*u`2)*v`2 by GROUP_1:def 3
     .= (y`1*v`2)*(x`2*u`2) by GROUP_1:def 3;
A10: (v`1*u`2)*(x`2*y`2) = v`1*u`2*x`2*y`2 by GROUP_1:def 3
     .= v`1*(u`2*x`2)*y`2 by GROUP_1:def 3
     .= (v`1*y`2)*(x`2*u`2) by GROUP_1:def 3;
A11: (u`1*x`2)*(y`2*v`2)+((y`1*x`2)*(u`2*v`2) - w`1*z`2)
     = (u`1*x`2)*(y`2*v`2)+ (y`1*x`2)*(u`2*v`2) - w`1*z`2 by RLVECT_1:def 3
     .= (u`1*x`2*y`2*v`2)+(y`1*x`2)*(u`2*v`2) - w`1*z`2 by GROUP_1:def 3
     .= t+(y`1*x`2)*(u`2*v`2) -((u`1*v`2)*(x`2*y`2)+(v`1*u`2)*(x`2*y`2))
       by VECTSP_1:def 7
     .= t+(y`1*x`2)*(u`2*v`2) -(t+(v`1*u`2)*(x`2*y`2)) by A8,GROUP_1:def 3
     .= t+(y`1*x`2)*(u`2*v`2)+ ( -t + -(v`1*u`2)*(x`2*y`2)) by RLVECT_1:31
     .= (y`1*x`2)*(u`2*v`2) + t + -t + -(v`1*u`2)*(x`2*y`2) by RLVECT_1:def 3
     .= (y`1*x`2)*(u`2*v`2) + (t + -t) + -(v`1*u`2)*(x`2*y`2) by RLVECT_1:def 3
     .= (y`1*x`2)*(u`2*v`2) + 0.R + -(v`1*u`2)*(x`2*y`2) by RLVECT_1:5
     .= (y`1*v`2)*(x`2*u`2) -(v`1*y`2)*(x`2*u`2) by A10,A9,GROUP_1:def 3
     .= (y`1*v`2 -v`1*y`2)*(x`2*u`2) by VECTSP_1:13;
A12: z`1*w`2 -w`1*z`2
      = (x`1*y`2)*(u`2*v`2)+(y`1*x`2)*(u`2*v`2) -w`1*z`2 by VECTSP_1:def 7
     .= (x`1*y`2*u`2*v`2)+(y`1*x`2)*(u`2*v`2) -w`1*z`2 by GROUP_1:def 3
     .= (x`1*u`2*y`2*v`2)+(y`1*x`2)*(u`2*v`2) -w`1*z`2 by GROUP_1:def 3
     .= (x`1*u`2)*(y`2*v`2)+(y`1*x`2)*(u`2*v`2) -w`1*z`2 by GROUP_1:def 3
     .= (x`1*u`2-u`1*x`2)*(y`2*v`2)+ (u`1*x`2)*(y`2*v`2)
       + ((y`1*x`2)*(u`2*v`2) -w`1*z`2) by A7,RLVECT_1:28
     .= (x`1*u`2-u`1*x`2)*(y`2*v`2)+(y`1*v`2 -v`1*y`2)*(x`2*u`2)
        by A11,RLVECT_1:def 3;
     reconsider t1 = x`1*u`2-u`1*x`2 as Element of R;
     reconsider t2 = y`1*v`2 -v`1*y`2 as Element of R;
     reconsider s = s1*s2 as Element of S by A3,A5,C0SP1:def 4;
     (z`1*w`2 -w`1*z`2)*s
      = t1*(y`2*v`2)*s + t2*(x`2*u`2)*s by A12,VECTSP_1:def 7
     .= t1*s*(y`2*v`2) + t2*(x`2*u`2)*s by GROUP_1:def 3
     .= (0.R)*s2*(y`2*v`2) + t2*(x`2*u`2)*s by A4,GROUP_1:def 3
     .= t2*(s1*s2)*(x`2*u`2) by GROUP_1:def 3
     .= (0.R)*s1*(x`2*u`2) by A6,GROUP_1:def 3
     .= 0.R;
     hence thesis;
   end;
