Article VECTSP_8, MML version 4.99.1005

:: VECTSP_8:funcnot 1 => VECTSP_8:func 1
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  func lattice A2 -> non empty strict Lattice-like bounded LattStr equals
    LattStr(#Subspaces a2,SubJoin a2,SubMeet a2#);
end;

:: VECTSP_8:def 1
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   lattice b2 = LattStr(#Subspaces b2,SubJoin b2,SubMeet b2#);

:: VECTSP_8:modenot 1 => VECTSP_8:mode 1
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  mode SubVS-Family of A2 means
    for b1 being set
          st b1 in it
       holds b1 is Subspace of a2;
end;

:: VECTSP_8:dfs 2
definiens
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  let a3 be set;
To prove
     a3 is SubVS-Family of a2
it is sufficient to prove
  thus for b1 being set
          st b1 in a3
       holds b1 is Subspace of a2;

:: VECTSP_8:def 2
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being set holds
      b3 is SubVS-Family of b2
   iff
      for b4 being set
            st b4 in b3
         holds b4 is Subspace of b2;

:: VECTSP_8:exreg 1
registration
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  cluster non empty SubVS-Family of a2;
end;

:: VECTSP_8:funcnot 2 => VECTSP_8:func 2
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  redefine func Subspaces a2 -> non empty SubVS-Family of a2;
end;

:: VECTSP_8:modenot 2 => VECTSP_8:mode 2
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  let a3 be non empty SubVS-Family of a2;
  redefine mode Element of a3 -> Subspace of a2;
end;

:: VECTSP_8:funcnot 3 => VECTSP_8:func 3
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  let a3 be Element of Subspaces a2;
  func carr A3 -> Element of bool the carrier of a2 means
    ex b1 being Subspace of a2 st
       a3 = b1 & it = the carrier of b1;
end;

:: VECTSP_8:def 3
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being Element of Subspaces b2
for b4 being Element of bool the carrier of b2 holds
      b4 = carr b3
   iff
      ex b5 being Subspace of b2 st
         b3 = b5 & b4 = the carrier of b5;

:: VECTSP_8:funcnot 4 => VECTSP_8:func 4
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  func carr A2 -> Function-like quasi_total Relation of Subspaces a2,bool the carrier of a2 means
    for b1 being Element of Subspaces a2
    for b2 being Subspace of a2
          st b1 = b2
       holds it . b1 = the carrier of b2;
end;

:: VECTSP_8:def 4
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being Function-like quasi_total Relation of Subspaces b2,bool the carrier of b2 holds
      b3 = carr b2
   iff
      for b4 being Element of Subspaces b2
      for b5 being Subspace of b2
            st b4 = b5
         holds b3 . b4 = the carrier of b5;

:: VECTSP_8:th 1
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being non empty Element of bool Subspaces b2 holds
   (carr b2) .: b3 is not empty;

:: VECTSP_8:th 2
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being strict Subspace of b2 holds
   0. b2 in (carr b2) . b3;

:: VECTSP_8:funcnot 5 => VECTSP_8:func 5
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  let a3 be non empty Element of bool Subspaces a2;
  func meet A3 -> strict Subspace of a2 means
    the carrier of it = meet ((carr a2) .: a3);
end;

:: VECTSP_8:def 5
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3 being non empty Element of bool Subspaces b2
for b4 being strict Subspace of b2 holds
      b4 = meet b3
   iff
      the carrier of b4 = meet ((carr b2) .: b3);

:: VECTSP_8:th 3
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   Subspaces b2 = the carrier of lattice b2;

:: VECTSP_8:th 4
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   the L_meet of lattice b2 = SubMeet b2;

:: VECTSP_8:th 5
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   the L_join of lattice b2 = SubJoin b2;

:: VECTSP_8:th 6
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3, b4 being Element of the carrier of lattice b2
for b5, b6 being strict Subspace of b2
      st b3 = b5 & b4 = b6
   holds    b3 [= b4
   iff
      the carrier of b5 c= the carrier of b6;

:: VECTSP_8:th 7
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3, b4 being Element of the carrier of lattice b2
for b5, b6 being Subspace of b2
      st b3 = b5 & b4 = b6
   holds b3 "\/" b4 = b5 + b6;

:: VECTSP_8:th 8
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b3, b4 being Element of the carrier of lattice b2
for b5, b6 being Subspace of b2
      st b3 = b5 & b4 = b6
   holds b3 "/\" b4 = b5 /\ b6;

:: VECTSP_8:attrnot 1 => LATTICE3:attr 4
definition
  let a1 be non empty LattStr;
  attr a1 is complete means
    for b1 being Element of bool the carrier of a1 holds
       ex b2 being Element of the carrier of a1 st
          b2 is_less_than b1 &
           (for b3 being Element of the carrier of a1
                 st b3 is_less_than b1
              holds b3 [= b2);
end;

:: VECTSP_8:dfs 6
definiens
  let a1 be non empty LattStr;
To prove
     a1 is complete
it is sufficient to prove
  thus for b1 being Element of bool the carrier of a1 holds
       ex b2 being Element of the carrier of a1 st
          b2 is_less_than b1 &
           (for b3 being Element of the carrier of a1
                 st b3 is_less_than b1
              holds b3 [= b2);

:: VECTSP_8:def 6
theorem
for b1 being non empty LattStr holds
      b1 is complete
   iff
      for b2 being Element of bool the carrier of b1 holds
         ex b3 being Element of the carrier of b1 st
            b3 is_less_than b2 &
             (for b4 being Element of the carrier of b1
                   st b4 is_less_than b2
                holds b4 [= b3);

:: VECTSP_8:th 9
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   lattice b2 is complete;

:: VECTSP_8:th 10
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being set
for b3 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b4 being Element of bool the carrier of b3
      st b4 is not empty & b4 is linearly-closed(b1, b3) & b2 in Lin b4
   holds b2 in b4;

:: VECTSP_8:funcnot 6 => VECTSP_8:func 6
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr;
  let a2, a3 be non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over a1;
  let a4 be Function-like quasi_total Relation of the carrier of a2,the carrier of a3;
  func FuncLatt A4 -> Function-like quasi_total Relation of the carrier of lattice a2,the carrier of lattice a3 means
    for b1 being strict Subspace of a2
    for b2 being Element of bool the carrier of a3
          st b2 = a4 .: the carrier of b1
       holds it . b1 = Lin b2;
end;

:: VECTSP_8:def 7
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2, b3 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b4 being Function-like quasi_total Relation of the carrier of b2,the carrier of b3
for b5 being Function-like quasi_total Relation of the carrier of lattice b2,the carrier of lattice b3 holds
      b5 = FuncLatt b4
   iff
      for b6 being strict Subspace of b2
      for b7 being Element of bool the carrier of b3
            st b7 = b4 .: the carrier of b6
         holds b5 . b6 = Lin b7;

:: VECTSP_8:modenot 3 => VECTSP_8:mode 3
definition
  let a1, a2 be non empty Lattice-like LattStr;
  mode Semilattice-Homomorphism of A1,A2 -> Function-like quasi_total Relation of the carrier of a1,the carrier of a2 means
    for b1, b2 being Element of the carrier of a1 holds
    it . (b1 "/\" b2) = (it . b1) "/\" (it . b2);
end;

:: VECTSP_8:dfs 8
definiens
  let a1, a2 be non empty Lattice-like LattStr;
  let a3 be Function-like quasi_total Relation of the carrier of a1,the carrier of a2;
To prove
     a3 is Semilattice-Homomorphism of a1,a2
it is sufficient to prove
  thus for b1, b2 being Element of the carrier of a1 holds
    a3 . (b1 "/\" b2) = (a3 . b1) "/\" (a3 . b2);

:: VECTSP_8:def 8
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2 holds
      b3 is Semilattice-Homomorphism of b1,b2
   iff
      for b4, b5 being Element of the carrier of b1 holds
      b3 . (b4 "/\" b5) = (b3 . b4) "/\" (b3 . b5);

:: VECTSP_8:modenot 4 => VECTSP_8:mode 4
definition
  let a1, a2 be non empty Lattice-like LattStr;
  mode sup-Semilattice-Homomorphism of A1,A2 -> Function-like quasi_total Relation of the carrier of a1,the carrier of a2 means
    for b1, b2 being Element of the carrier of a1 holds
    it . (b1 "\/" b2) = (it . b1) "\/" (it . b2);
end;

:: VECTSP_8:dfs 9
definiens
  let a1, a2 be non empty Lattice-like LattStr;
  let a3 be Function-like quasi_total Relation of the carrier of a1,the carrier of a2;
To prove
     a3 is sup-Semilattice-Homomorphism of a1,a2
it is sufficient to prove
  thus for b1, b2 being Element of the carrier of a1 holds
    a3 . (b1 "\/" b2) = (a3 . b1) "\/" (a3 . b2);

:: VECTSP_8:def 9
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2 holds
      b3 is sup-Semilattice-Homomorphism of b1,b2
   iff
      for b4, b5 being Element of the carrier of b1 holds
      b3 . (b4 "\/" b5) = (b3 . b4) "\/" (b3 . b5);

:: VECTSP_8:th 11
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2 holds
      b3 is Homomorphism of b1,b2
   iff
      b3 is sup-Semilattice-Homomorphism of b1,b2 & b3 is Semilattice-Homomorphism of b1,b2;

:: VECTSP_8:th 12
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2, b3 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b4 being Function-like quasi_total Relation of the carrier of b2,the carrier of b3
      st b4 is linear(b1, b2, b3)
   holds FuncLatt b4 is sup-Semilattice-Homomorphism of lattice b2,lattice b3;

:: VECTSP_8:th 13
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2, b3 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b4 being Function-like quasi_total Relation of the carrier of b2,the carrier of b3
      st b4 is one-to-one & b4 is linear(b1, b2, b3)
   holds FuncLatt b4 is Homomorphism of lattice b2,lattice b3;

:: VECTSP_8:th 14
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2, b3 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1
for b4 being Function-like quasi_total Relation of the carrier of b2,the carrier of b3
      st b4 is linear(b1, b2, b3) & b4 is one-to-one
   holds FuncLatt b4 is one-to-one;

:: VECTSP_8:th 15
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative well-unital distributive Abelian add-associative right_zeroed doubleLoopStr
for b2 being non empty right_complementable strict VectSp-like Abelian add-associative right_zeroed VectSpStr over b1 holds
   FuncLatt id the carrier of b2 = id the carrier of lattice b2;