reserve G for non empty addLoopStr;
reserve x for Element of G;
reserve M for non empty MidStr;
reserve p,q,r for Point of M;
reserve w for Function of [:the carrier of M,the carrier of M:], the carrier
  of G;
reserve S for non empty set;
reserve a,b,b9,c,c9,d for Element of S;
reserve w for Function of [:S,S:],the carrier of G;
reserve G for add-associative right_zeroed right_complementable non empty
  addLoopStr;
reserve x for Element of G;
reserve w for Function of [:S,S:],the carrier of G;
reserve G for add-associative right_zeroed right_complementable Abelian non
  empty addLoopStr;
reserve x for Element of G;
reserve w for Function of [:S,S:],the carrier of G;
reserve M for MidSp;
reserve p,q,r,s for Point of M;

theorem Th15:
  (for a being set holds a is Element of vectgroup(M) iff a is
Vector of M) & 0.vectgroup(M) = ID(M) & for a,b being Element of vectgroup(M),
  x,y being Vector of M st a=x & b=y holds a+b = x+y
proof
  set G = vectgroup(M);
  thus for a being set holds a is Element of G iff a is Vector of M
  proof
    let a be set;
    a is Element of G iff a is Element of setvect(M) by MIDSP_1:53;
    hence thesis by MIDSP_1:48;
  end;
  thus 0.G = zerovect(M) by MIDSP_1:55
    .= ID(M) by MIDSP_1:def 16;
  thus for a,b being Element of G, x,y being Vector of M st a=x & b=y holds a+
  b = x+y
  proof
    let a,b be Element of G,x,y be Vector of M such that
A1: a=x & b=y;
    reconsider xx = x, yy = y as Element of setvect(M) by MIDSP_1:48;
    thus a+b = (the addF of G).(a,b) by RLVECT_1:2
      .= (addvect(M)).(xx,yy) by A1,MIDSP_1:54
      .= xx+yy by MIDSP_1:def 14
      .= x+y by MIDSP_1:def 13;
  end;
end;
