The Mizar article:

Midpoint algebras

by
Michal Muzalewski

Received November 26, 1989

Copyright (c) 1989 Association of Mizar Users

MML identifier: MIDSP_1
[ MML identifier index ]


environ

 vocabulary BINOP_1, QC_LANG1, FUNCT_1, BOOLE, MCART_1, RELAT_1, VECTSP_1,
      ARYTM_1, RLVECT_1, MIDSP_1;
 notation TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, BINOP_1, STRUCT_0, RLVECT_1,
      MCART_1, FUNCT_1, FUNCT_2;
 constructors BINOP_1, VECTSP_1, MCART_1, MEMBERED, XBOOLE_0;
 clusters STRUCT_0, RELSET_1, SUBSET_1, MEMBERED, ZFMISC_1, XBOOLE_0;
 requirements SUBSET, BOOLE;
 definitions STRUCT_0, RLVECT_1;
 theorems ZFMISC_1, FUNCT_2, TARSKI, MCART_1, BINOP_1, RLVECT_1;
 schemes FUNCT_2, BINOP_1;

begin :: PRELIMINARY

definition
  struct(1-sorted) MidStr (# carrier -> set,
                          MIDPOINT -> BinOp of the carrier #);
end;

definition
 cluster non empty MidStr;
 existence
  proof consider A being non empty set, m being BinOp of A;
   take MidStr(#A,m#);
   thus the carrier of MidStr(#A,m#) is non empty;
  end;
end;

reserve MS for non empty MidStr;
reserve a, b for Element of MS;

definition let MS,a,b;
  func a@b -> Element of MS equals
  :Def1:  (the MIDPOINT of MS).(a,b);
  coherence;
end;

definition
  func op2 -> BinOp of {{}} means not contradiction;
  existence;
  uniqueness by FUNCT_2:66;
end;

definition
func Example -> MidStr equals
:Def3:  MidStr (# {{}}, op2 #);
correctness;
end;

definition
 cluster Example -> strict non empty;
 coherence
  proof
    thus Example is strict & the carrier of Example is non empty by Def3;
  end;
end;

canceled 4;

theorem
  the carrier of Example = {{}} by Def3;

theorem
  the MIDPOINT of Example = op2 by Def3;

theorem
    for a being Element of Example holds a = {} by Def3,TARSKI:
def 1;

theorem
   for a,b being Element of Example holds a@b = op2.(a,b) by
Def1,Def3;

canceled;

theorem
Th10: for a,b,c,d being Element of Example holds
         a@a = a & a@b = b@a & (a@b)@(c@d) = (a@c)@(b@d) &
         ex x being Element of Example st x@a = b
proof
 let a,b,c,d be Element of Example;
 thus a@a = {} by Def3,TARSKI:def 1 .= a by Def3,TARSKI:def 1;
 thus a@b = {} by Def3,TARSKI:def 1 .= b@a by Def3,TARSKI:def 1;
 thus (a@b)@(c@d) = {} by Def3,TARSKI:def 1 .= (a@c)@(b@d) by Def3,TARSKI:def 1
;
 take x = a;
 thus x@a = {} by Def3,TARSKI:def 1 .= b by Def3,TARSKI:def 1;
end;

:: A. MIDPOINT ALGEBRAS

definition let IT be non empty MidStr;
 attr IT is MidSp-like means
 :Def4: for a,b,c,d being Element of IT holds
         a@a = a & a@b = b@a & (a@b)@(c@d) = (a@c)@(b@d) &
         ex x being Element of IT st x@a = b;
end;

definition
 cluster strict MidSp-like (non empty MidStr);
  existence
   proof
       Example is MidSp-like by Def4,Th10;
    hence thesis;
   end;
end;

definition
 mode MidSp is MidSp-like (non empty MidStr);
end;

definition let M be MidSp, a, b be Element of M;
 redefine func a@b;
 commutativity by Def4;
end;

reserve M for MidSp;
reserve a,b,c,d,a',b',c',d',x,y,x' for Element of M;

canceled 4;

theorem
Th15: (a@b)@c = (a@c)@(b@c) :: right-self-distributivity
  proof
      (a@b)@c = (a@b)@(c@c) by Def4
           .= (a@c)@(b@c) by Def4;
    hence thesis;
  end;

theorem
Th16: a@(b@c) = (a@b)@(a@c) :: left-self-distributivity
  proof
      a@(b@c) = (a@a)@(b@c) by Def4
           .= (a@b)@(a@c) by Def4;
    hence thesis;
  end;

theorem
Th17: a@b = a implies a = b
  proof
    assume A1: a@b = a;
    consider x such that A2: x@a = b by Def4;
      b = (x@a)@b by A2,Def4
     .= (x@b)@a by A1,Th15
     .= a by A1,A2,Th15;
    hence thesis;
  end;

theorem
Th18: x@a = x'@a implies x = x' :: right-cancellation-law
  proof
    assume A1: x@a = x'@a;
    consider y such that A2: y@a = x by Def4;
      x = x@(y@a) by A2,Def4
     .= (x@y)@(x'@a) by A1,Th16
     .= x@(x@x') by A2,Def4;
    then x = x@x' by Th17;
    hence thesis by Th17;
  end;

theorem
  a@x = a@x' implies x = x' by Th18;
:: left-cancellation-law

:: B. CONGRUENCE RELATION

definition
  let M,a,b,c,d;
  pred a,b @@ c,d :: bound-vectors ab, cd are equivallent
  means
:Def5: a@d = b@c;
end;

canceled;

theorem
Th21: a,a @@ b,b
  proof
    thus a@b = a@b;
  end;

theorem
Th22: a,b @@ c,d implies c,d @@ a,b
  proof
    assume a@d = b@c;
    hence c@b = d@a;
  end;

theorem
Th23: a,a @@ b,c implies b = c
  proof
    assume a,a @@ b,c;
    then a@c = a@b by Def5;
    hence thesis by Th18;
  end;

theorem
Th24: a,b @@ c,c implies a = b
  proof
    assume a,b @@ c,c;
    then c,c @@ a,b by Th22;
    hence thesis by Th23;
  end;

theorem
 Th25: a,b @@ a,b
  proof
    thus a@b = b@a;
  end;

theorem
Th26: ex d st a,b @@ c,d
  proof
    consider d such that A1: d@a =b@c by Def4;
      a,b @@ c,d by A1,Def5;
    hence thesis;
  end;

theorem
Th27: a,b @@ c,d & a,b @@ c,d' implies d = d'
  proof
    assume A1: a,b @@ c,d;
    assume A2: a,b @@ c,d';
      a@d = b@c by A1,Def5
             .= a@d' by A2,Def5;
    hence thesis by Th18;
  end;

theorem
Th28: x,y @@ a,b & x,y @@ c,d implies a,b @@ c,d
  proof
    assume A1: x,y @@ a,b;

    assume A2: x,y @@ c,d;

      (y@x)@(a@d) = (y@a)@(x@d) by Def4
               .= (x@b)@(x@d) by A1,Def5
               .= (x@b)@(y@c) by A2,Def5
               .= (y@x)@(b@c) by Def4;
    hence a@d = b@c by Th18;
  end;

theorem
Th29: a,b @@ a',b' & b,c @@ b',c' implies a,c @@ a',c'
  proof
    assume A1: a,b @@ a',b';

    assume A2: b,c @@ b',c';

      (b'@b)@(a@c') = (a@b')@(b@c') by Def4
                 .= (b@a')@(b@c') by A1,Def5
                 .= (c@b')@(b@a') by A2,Def5
                 .= (b'@b)@(c@a') by Def4;
   hence a@c' = c@a' by Th18;
  end;

:: C. BOUND-VECTORS

reserve p,q,r,p',q' for Element of [:the carrier of M,the carrier of M:];

definition
 let M,p;
 redefine func p`1 -> Element of M;
 coherence by MCART_1:10;
end;

definition
 let M,p;
 redefine func p`2 -> Element of M;
 coherence by MCART_1:10;
end;

definition let M,p,q;
  pred p ## q means :Def6: p`1,p`2 @@ q`1,q`2;
  reflexivity by Th25;
  symmetry by Th22;
end;

definition let M,a,b;
 redefine func [a,b] -> Element of [:the carrier of M,the carrier of M:];
 coherence by ZFMISC_1:def 2;
end;

canceled;

theorem
Th31: a,b @@ c,d implies [a,b] ## [c,d]
  proof
    assume A1: a,b @@ c,d;
    set p = [a,b], q = [c,d];
      p`1 = a & p`2 = b & q`1 = c & q`2 = d by MCART_1:7;
    hence thesis by A1,Def6;
  end;

theorem
Th32: [a,b] ## [c,d] implies a,b @@ c,d
  proof
    assume A1: [a,b] ## [c,d];
    set p = [a,b], q = [c,d];
      p`1 = a & p`2 = b & q`1 = c & q`2 = d by MCART_1:7;
    hence thesis by A1,Def6;
  end;

canceled 2;

theorem
Th35: p ## q & p ## r implies q ## r
  proof
    assume p ## q & p ## r;
    then p`1,p`2 @@ q`1,q`2 & p`1,p`2 @@ r`1,r`2 by Def6;
    hence q`1,q`2 @@ r`1,r`2 by Th28;
  end;

theorem
   p ## r & q ## r implies p ## q by Th35;

theorem
  p ## q & q ## r implies p ## r by Th35;

theorem
  p ## q implies (r ## p iff r ## q) by Th35;

theorem Th39:
 for p holds
 { q : q ## p } is non empty Subset of [:the carrier of M,the carrier of M:]
   proof
    let p;
    set pp = { q : q ## p };
    A1: p in pp;
      for x be set holds
        x in pp implies x in [:the carrier of M,the carrier of M:]
     proof
      let x be set;
      assume x in pp;
      then ex q st (x = q & q ## p);
      hence thesis;
     end;
    hence thesis by A1,TARSKI:def 3;
   end;

:: D.  ( FREE ) VECTORS

definition let M,p;
  func p~ -> Subset of [:the carrier of M,the carrier of M:] equals
   :Def7:  { q : q ## p};
   coherence by Th39;
end;

definition let M,p;
  cluster p~ -> non empty;
   coherence
    proof
       p~ = { q : q ## p} by Def7;
     hence thesis by Th39;
    end;
end;

canceled;

theorem
Th41: for p holds r in p~ iff r ## p
 proof
  let p;
  thus r in p~ implies r ## p
   proof
    assume r in p~;
    then r in { q : q ## p} by Def7;
    then ex q st r = q & q ## p;
    hence thesis;
   end;
  thus r ## p implies r in p~
   proof
    assume r ## p;
    then r in { q : q ## p};
    hence thesis by Def7;
   end;
 end;

theorem
Th42: p ## q implies p~ = q~
  proof
    assume A1: p ## q;
      for x being set holds x in p~ iff x in q~
      proof
        let x be set;
        thus x in p~ implies x in q~
         proof
          assume A2: x in p~;
          then reconsider r = x as
               Element of [:the carrier of M,the carrier of M:];
            r ## p by A2,Th41;
          then r ## q by A1,Th35;
          hence thesis by Th41;
         end;
         thus x in q~ implies x in p~
          proof
           assume A3: x in q~;
           then reconsider r = x as
                Element of [:the carrier of M,the carrier of M:];
             r ## q by A3,Th41;
           then r ## p by A1,Th35;
           hence thesis by Th41;
          end;
        thus thesis;
      end;
    hence thesis by TARSKI:2;
  end;

theorem
Th43: p~ = q~ implies p ## q
  proof
      p in p~ by Th41;
    hence thesis by Th41;
  end;

theorem
Th44: [a,b]~ = [c,d]~ implies a@d = b@c
  proof
    assume [a,b]~ = [c,d]~;
    then [a,b] ## [c,d] by Th43;
    then a,b @@ c,d by Th32;
    hence thesis by Def5;
  end;

theorem
   p in p~ by Th41;

definition let M;
  mode Vector of M -> non empty Subset of [:the carrier of M,the carrier of M:]
  means :Def8: ex p st it = p~;
  existence
   proof
    consider p;
    take p~;
    thus thesis;
   end;
end;

reserve u,v,w,u',w' for Vector of M;

definition
  let M,p;
  redefine func p~ -> Vector of M;
  coherence by Def8;
end;

canceled 2;

theorem
Th48: ex u st for p holds p in u iff p`1 = p`2
  proof
    consider a;
    take [a,a]~;
    let p;
       [a,a]`1 = a & [a,a]`2 = a by MCART_1:7;
    then p`1,p`2 @@ a,a iff p ## [a,a] by Def6;
    hence thesis by Th21,Th24,Th41;
  end;

definition let M;
  func ID(M) -> Vector of M :: zero vector
  equals :Def9:  { p : p`1 = p`2 };
  coherence
   proof
    consider u such that A1: for p holds p in u iff p`1 = p`2 by Th48;
      u = { p : p`1 = p`2 }
     proof
        for x being set holds x in u iff x in { p : p`1 = p`2 }
       proof
        let x be set;
        thus x in u implies x in { p : p`1 = p`2 }
         proof
          assume A2: x in u;
          then reconsider r = x
            as Element of [:the carrier of M,the carrier of M:];
            r`1 = r`2 by A1,A2;
          hence thesis;
         end;
        thus x in { p : p`1 = p`2 } implies x in u
         proof
          assume x in { p : p`1 = p`2 };
          then ex p st x = p & p`1 = p`2;
          hence thesis by A1;
         end;
       end;
      hence thesis by TARSKI:2;
     end;
    hence thesis;
   end;
  end;

canceled;

theorem
Th50: ID(M) = [b,b]~
  proof
     p in ID(M) iff p in [b,b]~
      proof
        thus p in ID(M) implies p in [b,b]~
          proof
            assume p in ID(M);
            then p in { q : q`1 = q`2 } by Def9;
            then ex q st p = q & q`1 = q`2;
            then A1: p`1,p`2 @@ b,b by Th21;
              [b,b]`1=b & [b,b]`2=b by MCART_1:7;
            then p ## [b,b] by A1,Def6;
            hence thesis by Th41;
          end;
        thus p in [b,b]~ implies p in ID(M)
          proof
            assume p in [b,b]~;
            then A2: p ## [b,b] by Th41;
              [b,b]`1=b & [b,b]`2=b by MCART_1:7;
            then p`1,p`2 @@ b,b by A2,Def6;
            then p`1 = p`2 by Th24;
            then p in { q : q`1 = q`2 };
            hence thesis by Def9;
          end;
        thus thesis;
      end;
    then for p being set holds p in ID(M) iff p in [b,b]~;
   hence thesis by TARSKI:2;
  end;

theorem
Th51:  ex w,p,q st u = p~ & v = q~ & p`2 = q`1 & w = [p`1,q`2]~
  proof
    consider p such that A1: u = p~ by Def8;
    consider q such that A2: v = q~ by Def8;
    consider d such that A3: q`1,q`2 @@ p`2,d by Th26;
    take [p`1,d]~, p' = p, q'= [p`2,d];
    thus u = p'~ by A1;
      q'`1 = p`2 & q'`2 = d by MCART_1:7;
    then q ## q' by A3,Def6;
    hence v = q'~ by A2,Th42;
    thus p'`2 = q'`1 by MCART_1:7;
    thus thesis by MCART_1:7;
  end;

theorem
Th52: (ex p,q st u = p~ & v = q~ & p`2 = q`1 & w = [p`1,q`2]~)&
      (ex p,q st u = p~ & v = q~ & p`2 = q`1 & w' = [p`1,q`2]~)
      implies w = w'
  proof
    given p,q such that A1: u = p~ and A2: v = q~ and A3: p`2 = q`1
                    and A4: w = [p`1,q`2]~;
    given p',q' such that A5: u = p'~ and A6: v = q'~ and A7:p'`2 = q'`1
                    and A8: w' = [p'`1,q'`2]~;
      p ## p' by A1,A5,Th43;
    then A9: p`1,p`2 @@ p'`1,p'`2 by Def6;
      q ## q' by A2,A6,Th43;
    then q`1,q`2 @@ q'`1,q'`2 by Def6;
    then p`1,q`2 @@ p'`1,q'`2 by A3,A7,A9,Th29;
    then [p`1,q`2] ## [p'`1,q'`2] by Th31;
    hence thesis by A4,A8,Th42;
  end;

definition
  let M,u,v;
  func u + v -> Vector of M means
 :Def10: ex p,q st (u = p~ & v = q~ & p`2 = q`1 & it = [p`1,q`2]~);
  existence by Th51;
  uniqueness by Th52;
end;

:: E. ATLAS

theorem
Th53: ex b st u = [a,b]~
  proof
    consider p such that A1: u = p~ by Def8;
    consider b such that A2: p`1,p`2 @@ a,b by Th26;
      [p`1,p`2] ## [a,b] by A2,Th31;
    then p ## [a,b] by MCART_1:23;
    then p~ = [a,b]~ by Th42;
    hence thesis by A1;
  end;

definition
 let M,a,b;
 func vect(a,b) -> Vector of M equals
 :Def11:  [a,b]~;
 coherence;
end;

canceled;

theorem
Th55: ex b st u = vect(a,b)
 proof
  consider b such that A1: u = [a,b]~ by Th53;
    u = vect(a,b) by A1,Def11;
  hence thesis;
 end;

theorem
Th56: [a,b] ## [c,d] implies vect(a,b) = vect(c,d)
 proof
  assume [a,b] ## [c,d];
  then A1: [a,b]~ = [c,d]~ by Th42;
    vect(a,b) = [a,b]~ by Def11;
  hence thesis by A1,Def11;
 end;

theorem
Th57: vect(a,b) = vect(c,d) implies a@d = b@c
 proof
  assume A1: vect(a,b) = vect(c,d);
    vect(a,b) = [a,b]~ by Def11;
  then [a,b]~ = [c,d]~ by A1,Def11;
  hence thesis by Th44;
 end;

theorem
Th58: ID(M) = vect(b,b)
 proof
    ID(M) = [b,b]~ by Th50
      .= vect(b,b) by Def11;
  hence thesis;
 end;

theorem
   vect(a,b) = vect(a,c) implies b = c
  proof
    assume vect(a,b) = vect(a,c);
    then [a,b]~ = vect(a,c) by Def11
               .= [a,c]~ by Def11;
    then [a,b] ## [a,c] by Th43;
    then a,b @@ a,b & a,b @@ a,c by Th32;
    hence thesis by Th27;
  end;

theorem
Th60: vect(a,b) + vect(b,c) = vect(a,c)
  proof
    set p = [a,b], q = [b,c];
    A1: p`1 = a by MCART_1:7; A2: q`2 = c by MCART_1:7;
    set u = p~, v = q~;
      p`2 = b by MCART_1:7
        .= q`1 by MCART_1:7;
    then A3: u + v = [p`1,q`2]~ by Def10;
    A4: u = vect(a,b) by Def11;
       v = vect(b,c) by Def11;
    hence thesis by A1,A2,A3,A4,Def11;
  end;

:: F. VECTOR GROUPS

theorem
Th61: [a,a@b] ## [a@b,b]
  proof
      a@b = (a@b)@(a@b) by Def4;
    then a,a@b @@ a@b,b by Def5;
    hence thesis by Th31;
  end;

theorem
   vect(a,a@b) + vect(a,a@b) = vect(a,b)
  proof
      [a,a@b] ## [a@b,b] by Th61;
    then vect(a,a@b) + vect(a,a@b) = vect(a,a@b) + vect(a@b,b) by Th56
                       .= vect(a,b) by Th60;
    hence thesis;
  end;

theorem
Th63: (u+v)+w = u+(v+w)
  proof
    consider a;
    consider b such that A1: u = vect(a,b) by Th55;
    consider c such that A2: v = vect(b,c) by Th55;
    consider d such that A3: w = vect(c,d) by Th55;
      (u+v)+w = vect(a,c)+w by A1,A2,Th60
           .= vect(a,d) by A3,Th60
           .= vect(a,b)+vect(b,d) by Th60
           .= u+(v+w) by A1,A2,A3,Th60;
    hence thesis;
  end;

theorem
Th64: u+ID(M) = u
  proof
    consider a;
    consider b such that A1: u = vect(a,b) by Th55;
      u+ID(M) = vect(a,b)+vect(b,b) by A1,Th58
       .= u by A1,Th60;
    hence thesis;
  end;

theorem
Th65: ex v st u+v = ID(M)
  proof
    consider a;
    consider b such that A1: u = vect(a,b) by Th55;
      u + vect(b,a) = vect(a,a) by A1,Th60
              .= ID(M) by Th58;
    hence thesis;
  end;

theorem
Th66: u+v = v+u
  proof
    consider a;
    consider b such that A1: u = vect(a,b) by Th55;
    consider c such that A2: v = vect(b,c) by Th55;
    consider d such that A3: v = vect(a,d) by Th55;
    consider c' such that A4: u = vect(d,c') by Th55;
A5:    a@c' = b@d by A1,A4,Th57
        .= a@c by A2,A3,Th57;
      u + v = vect(a,c) by A1,A2,Th60
              .= vect(a,c') by A5,Th18
              .= v + u by A3,A4,Th60;
    hence thesis;
  end;

theorem Th67:
 u + v = u + w implies v = w
 proof
    assume A1: u + v = u + w;
    consider u' such that A2: u + u' = ID(M) by Th65;
      v = v + ID(M) by Th64 .= (u + u') + v by A2,Th66
    .= (u' + u) + v by Th66 .= u' + (u + w) by A1,Th63
    .= (u' + u) + w by Th63 .= ID(M) + w by A2,Th66
    .= w + ID(M) by Th66;
    hence thesis by Th64;
 end;

definition let M,u;
 func -u -> Vector of M means
    u + it = ID(M);
 existence by Th65;
 uniqueness by Th67;
end;

reserve X for Element of bool [:the carrier of M,the carrier of M:];

definition let M;
 func setvect(M) -> set equals :Def13:  { X : X is Vector of M};
 coherence;
end;

reserve x for set;

Lm1: x in setvect(M) iff ex X st x = X & X is Vector of M
 proof
    x in { X : X is Vector of M } iff ex X st x = X & X is Vector of M;
  hence thesis by Def13;
 end;

canceled 3;

theorem Th71:
        x is Vector of M iff x in setvect(M)
 proof
  thus x is Vector of M implies x in setvect(M) by Lm1;
  thus x in setvect(M) implies x is Vector of M
   proof
    assume x in setvect(M);
    then ex X st x = X & X is Vector of M by Lm1;
    hence thesis;
   end;
 end;

definition let M;
 cluster setvect(M) -> non empty;
  coherence
   proof
      ID(M) in setvect(M) by Th71;
    hence thesis;
   end;
 end;

reserve u1,v1,w1,W,W1,W2,T for Element of setvect(M);

definition let M,u1,v1;
 func u1 + v1 -> Element of setvect(M) means
 :Def14: for u,v holds u1 = u & v1 = v implies it = u + v;
 existence
  proof
    reconsider u2 = u1, v2 = v1 as Vector of M by Th71;
    reconsider suma = u2 + v2 as Element of setvect(M) by Th71;
    take suma;
    thus thesis;
  end;
 uniqueness
  proof
   let W1,W2 such that
   A1: for u,v holds u1 = u & v1 = v implies W1 = u + v and
   A2: for u,v holds u1 = u & v1 = v implies W2 = u + v;
   reconsider u = u1, v = v1 as Vector of M by Th71;
     W1 = u + v & W2 = u + v by A1,A2;
   hence thesis;
  end;
end;

canceled 2;

theorem Th74:
u1 + v1 = v1 + u1
 proof
   reconsider u = u1, v = v1 as Vector of M by Th71;
   thus u1 + v1 = u + v by Def14 .= v + u by Th66 .= v1 + u1 by Def14;
 end;

theorem Th75:
(u1 + v1) + w1 = u1 + (v1 + w1)
 proof
  reconsider u = u1, v = v1, w = w1 as Vector of M by Th71;
  A1: u1 + v1 = u + v by Def14;
  A2: v1 + w1 = v + w by Def14;
  thus (u1 + v1) + w1 = (u + v) + w by A1,Def14
                     .= u + (v + w) by Th63
                     .= u1 + (v1 + w1) by A2,Def14;
 end;

definition let M;
 func addvect(M) -> BinOp of setvect(M) means
 :Def15: for u1,v1 holds it.(u1,v1) = u1 + v1;
 existence
  proof
   defpred P[Element of setvect(M),Element of setvect(M),
   Element of setvect(M)] means $3 = $1 + $2;
   A1: for u1,v1 ex W st P[u1,v1,W];
   consider o being BinOp of setvect(M) such that
   A2: for u1,v1 holds P[u1,v1,o.(u1,v1)] from BinOpEx (A1);
   take o;
   thus thesis by A2;
  end;
 uniqueness
  proof
   let f,g be BinOp of setvect(M) such that
   A3: for u1,v1 holds f.(u1,v1) = u1 + v1 and
   A4: for u1,v1 holds g.(u1,v1) = u1 + v1;
     for u1,v1 holds f.[u1,v1] = g.[u1,v1]
    proof
     let u1,v1;
A5:      f.(u1,v1) = u1 + v1 by A3;
       f.[u1,v1] = f.(u1,v1) by BINOP_1:def 1 .= g.(u1,v1) by A4,A5;
     hence thesis by BINOP_1:def 1;
    end;
   hence thesis by FUNCT_2:120;
  end;
end;

canceled;

theorem Th77:
 for W ex T st W + T = ID(M)
    proof
     let W;
     reconsider x = W as Vector of M by Th71;
     consider y being Vector of M such that A1: x + y = ID(M) by Th65;
     reconsider T = y as Element of setvect(M) by Th71;
       x + y = W + T by Def14;
     hence thesis by A1;
    end;

theorem Th78:
 for W,W1,W2 st W + W1 = ID(M) & W + W2 = ID(M) holds W1 = W2
    proof
     let W,W1,W2 such that A1: W + W1 = ID(M) and A2: W + W2 = ID(M);
     reconsider x = W,y1 = W1,y2 = W2 as Vector of M by Th71;
       x + y1 = W + W2 by A1,A2,Def14
     .= x + y2 by Def14;
     hence thesis by Th67;
    end;

definition let M;
 func complvect(M) -> UnOp of setvect(M) means
 :Def16: for W holds W + it.W = ID(M);
 existence
  proof
   defpred Z[Element of setvect(M),Element of setvect(M)] means
             $1 + $2 = ID(M);
   A1: for W ex T st Z[W,T] by Th77;
   consider o being UnOp of setvect(M) such that
   A2: for W holds Z[W,o.W] from FuncExD(A1);
   take o;
   thus thesis by A2;
  end;
 uniqueness
  proof
   let f,g be UnOp of setvect(M) such that
   A3: for W holds W + f.W = ID(M) and A4: for W holds W + g.W = ID(M);
     for W holds f.W = g.W
    proof
     let W;
     A5: W + f.W = ID(M) by A3;
       W + g.W = ID(M) by A4;
     hence thesis by A5,Th78;
    end;
   hence thesis by FUNCT_2:113;
  end;
end;

definition let M;
 func zerovect(M) -> Element of setvect(M) equals
 :Def17: ID(M);
 coherence by Th71;
end;

definition let M;
 func vectgroup(M) -> LoopStr equals
 :Def18:  LoopStr (# setvect(M), addvect(M), zerovect(M) #);
 coherence;
end;

definition let M;
 cluster vectgroup M -> strict non empty;
 coherence
  proof
      vectgroup M = LoopStr (# setvect(M),addvect(M), zerovect(M) #) by Def18;
   hence vectgroup M is strict & the carrier of vectgroup M is non empty;
  end;
end;

canceled 3;

theorem Th82:
the carrier of vectgroup(M) = setvect(M)
 proof
     the carrier of LoopStr(#setvect(M), addvect(M), zerovect(M)#)
     = setvect(M);
  hence thesis by Def18;
 end;

theorem Th83:
the add of vectgroup(M) = addvect(M)
 proof
    the add of LoopStr(#setvect(M), addvect(M), zerovect(M)#)
     = addvect(M);
  hence thesis by Def18;
 end;

canceled;

theorem Th85:
the Zero of vectgroup(M) = zerovect(M)
 proof
    the Zero of LoopStr(#setvect(M), addvect(M), zerovect(M)#)
     = zerovect(M);
  hence thesis by Def18;
 end;

theorem
   vectgroup(M) is add-associative right_zeroed right_complementable Abelian
 proof
  set GS = vectgroup(M);
  thus GS is add-associative
  proof
    let x,y,z be Element of GS;
    reconsider xx = x, yy = y, zz = z as Element of setvect(M) by Th82;
    thus (x+y)+z = (the add of GS).(x+y,z) by RLVECT_1:5
          .= (the add of GS).((the add of GS).(x,y),z) by RLVECT_1:5
          .= (the add of GS).((addvect(M)).(xx,yy),z) by Th83
          .= (addvect(M)).((addvect(M)).(xx,yy),zz) by Th83
          .= (addvect(M)).(xx+yy,zz) by Def15
          .= (xx+yy)+zz by Def15
          .= xx+(yy+zz) by Th75
          .= (addvect(M)).(xx,yy+zz) by Def15
          .= (addvect(M)).(xx,(addvect(M)).(yy,zz)) by Def15
          .= (addvect(M)).(xx,(the add of GS).(yy,zz)) by Th83
          .= (the add of GS).(xx,(the add of GS).(yy,zz)) by Th83
          .= (the add of GS).(xx,y+z) by RLVECT_1:5
          .= x+(y+z) by RLVECT_1:5;
  end;
  thus GS is right_zeroed
  proof
    let x be Element of GS;
    reconsider xx = x as Element of setvect(M) by Th82;
    thus x+0.GS = x
     proof
      A1: 0.GS = the Zero of GS by RLVECT_1:def 2
              .= zerovect(M) by Th85;
      reconsider xxx = xx as Vector of M by Th71;
      A2: x+(0.GS) = (the add of GS).(xx,(zerovect(M))) by A1,RLVECT_1:5
              .= (addvect(M)).(xx,(zerovect(M))) by Th83
              .= xx+(zerovect(M)) by Def15;
        xx = xxx & zerovect(M) = ID(M) by Def17;
      then xx+(zerovect(M)) = xxx+ID(M) by Def14
              .= x by Th64;
      hence thesis by A2;
     end;
  end;
  thus GS is right_complementable
  proof
    let x be Element of GS;
    reconsider xx = x as Element of setvect(M) by Th82;
    reconsider w = (complvect(M)).xx as Element of GS by Th82;
    take w;
    thus x + w = (the add of GS).(x,w) by RLVECT_1:5
       .= (addvect(M)).(xx,(complvect(M)).xx) by Th83
       .= xx + (complvect(M)).xx by Def15
       .= ID(M) by Def16
       .= zerovect(M) by Def17
       .= the Zero of GS by Th85
       .= 0.GS by RLVECT_1:def 2;
  end;
  thus GS is Abelian
  proof
    let x,y be Element of GS;
    reconsider xx = x, yy = y as Element of setvect(M) by Th82;
    thus x+y = (the add of GS).(x,y) by RLVECT_1:5
          .= (addvect(M)).(xx,yy) by Th83
          .= xx + yy by Def15
          .= yy + xx by Th74
          .= (addvect(M)).(yy,xx) by Def15
          .= (the add of GS).(y,x) by Th83
          .= y+x by RLVECT_1:5;
  end;
 end;

Back to top