Article LAPLACE, MML version 4.99.1005

:: LAPLACE:th 1
theorem
for b1 being Relation-like Function-like FinSequence-like set
for b2 being natural set
      st b2 in dom b1
   holds len Del(b1,b2) = (len b1) -' 1;

:: LAPLACE:th 2
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b2, b3, b4 being natural set
for b5 being Matrix of b4,b4,the carrier of b1
      st b2 in dom b5
   holds len Deleting(b5,b2,b3) = b4 -' 1;

:: LAPLACE:th 3
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being tabular FinSequence of (the carrier of b2) *
      st b1 in Seg width b3
   holds width DelCol(b3,b1) = (width b3) -' 1;

:: LAPLACE:th 4
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b2 being tabular FinSequence of (the carrier of b1) *
for b3 being natural set
      st 1 < len b2
   holds width b2 = width DelLine(b2,b3);

:: LAPLACE:th 5
theorem
for b1, b2 being natural set
for b3 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b4 being Matrix of b2,b2,the carrier of b3
for b5 being natural set
      st b1 in Seg width b4
   holds width Deleting(b4,b5,b1) = b2 -' 1;

:: LAPLACE:funcnot 1 => LAPLACE:func 1
definition
  let a1 be non empty multMagma;
  let a2 be Function-like quasi_total Relation of [:the carrier of a1,NAT:],the carrier of a1;
  let a3 be Element of the carrier of a1;
  let a4 be natural set;
  redefine func a2 .(a3,a4) -> Element of the carrier of a1;
end;

:: LAPLACE:th 6
theorem
for b1 being natural set holds
   Card Permutations b1 = b1 !;

:: LAPLACE:th 7
theorem
for b1, b2, b3 being natural set
      st b2 in Seg (b1 + 1) & b3 in Seg (b1 + 1)
   holds Card {b4 where b4 is Element of Permutations (b1 + 1): b4 . b2 = b3} = b1 !;

:: LAPLACE:th 8
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive Fanoian doubleLoopStr
for b3 being Element of Permutations (b1 + 2)
for b4, b5 being Element of Fin TWOELEMENTSETS Seg (b1 + 2)
      st b5 = {b6 where b6 is Element of TWOELEMENTSETS Seg (b1 + 2): b6 in b4 & (Part_sgn(b3,b2)) . b6 = - 1_ b2}
   holds (the multF of b2) $$(b4,Part_sgn(b3,b2)) = (power b2) .(- 1_ b2,card b5);

:: LAPLACE:th 9
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive Fanoian doubleLoopStr
for b3 being Element of Permutations (b1 + 2)
for b4, b5 being natural set
      st b4 in Seg (b1 + 2) & b3 . b4 = b5
   holds ex b6 being Element of Fin TWOELEMENTSETS Seg (b1 + 2) st
      b6 = {{b7,b4} where b7 is Element of NAT: {b7,b4} in TWOELEMENTSETS Seg (b1 + 2)} &
       (the multF of b2) $$(b6,Part_sgn(b3,b2)) = (power b2) .(- 1_ b2,b4 + b5);

:: LAPLACE:th 10
theorem
for b1, b2, b3 being natural set
      st b2 in Seg (b1 + 1) & b3 in Seg (b1 + 1) & 2 <= b1
   holds ex b4 being Function-like quasi_total Relation of TWOELEMENTSETS Seg b1,TWOELEMENTSETS Seg (b1 + 1) st
      proj2 b4 = (TWOELEMENTSETS Seg (b1 + 1)) \ {{b5,b2} where b5 is Element of NAT: {b5,b2} in TWOELEMENTSETS Seg (b1 + 1)} &
       b4 is one-to-one &
       (for b5, b6 being natural set
             st b5 < b6 & {b5,b6} in TWOELEMENTSETS Seg b1
          holds (b6 < b2 & b5 < b2 implies b4 . {b5,b6} = {b5,b6}) &
           (b2 <= b6 & b5 < b2 implies b4 . {b5,b6} = {b5,b6 + 1}) &
           (b2 <= b6 & b2 <= b5 implies b4 . {b5,b6} = {b5 + 1,b6 + 1}));

:: LAPLACE:th 11
theorem
for b1 being natural set
   st b1 < 2
for b2 being Element of Permutations b1 holds
   b2 is even(len Permutations b1) & b2 = idseq b1;

:: LAPLACE:th 12
theorem
for b1, b2, b3 being non empty set
for b4 being Function-like quasi_total Relation of b1,Fin b2
for b5 being Function-like quasi_total Relation of Fin b2,b3
for b6 being Function-like quasi_total Relation of [:b3,b3:],b3
   st (for b7, b8 being Element of Fin b2
            st b7 misses b8
         holds b6 .(b5 . b7,b5 . b8) = b5 . (b7 \/ b8)) &
      b6 is commutative(b3) &
      b6 is associative(b3) &
      b6 is having_a_unity(b3) &
      b5 . {} = the_unity_wrt b6
for b7 being Element of Fin b1
      st for b8, b9 being set
              st b8 in b7 & b9 in b7 & b4 . b8 meets b4 . b9
           holds b8 = b9
   holds b6 $$(b7,b5 * b4) = b6 $$(b4 .: b7,b5) &
    b6 $$(b4 .: b7,b5) = b5 . union (b4 .: b7) &
    union (b4 .: b7) is Element of Fin b2;

:: LAPLACE:funcnot 2 => LAPLACE:func 2
definition
  let a1, a2, a3 be natural set;
  let a4 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a5 be Matrix of a3,a3,the carrier of a4;
  assume a1 in Seg a3 & a2 in Seg a3;
  func Delete(A5,A1,A2) -> Matrix of a3 -' 1,a3 -' 1,the carrier of a4 equals
    Deleting(a5,a1,a2);
end;

:: LAPLACE:def 1
theorem
for b1, b2, b3 being natural set
for b4 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b5 being Matrix of b3,b3,the carrier of b4
      st b1 in Seg b3 & b2 in Seg b3
   holds Delete(b5,b1,b2) = Deleting(b5,b1,b2);

:: LAPLACE:th 13
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4, b5 being natural set
   st b4 in Seg b1 & b5 in Seg b1
for b6, b7 being natural set
      st b6 in Seg (b1 -' 1) & b7 in Seg (b1 -' 1)
   holds (b6 < b4 & b7 < b5 implies (Delete(b3,b4,b5)) *(b6,b7) = b3 *(b6,b7)) &
    (b6 < b4 & b5 <= b7 implies (Delete(b3,b4,b5)) *(b6,b7) = b3 *(b6,b7 + 1)) &
    (b4 <= b6 & b7 < b5 implies (Delete(b3,b4,b5)) *(b6,b7) = b3 *(b6 + 1,b7)) &
    (b4 <= b6 & b5 <= b7 implies (Delete(b3,b4,b5)) *(b6,b7) = b3 *(b6 + 1,b7 + 1));

:: LAPLACE:th 14
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4, b5 being natural set
      st b4 in Seg b1 & b5 in Seg b1
   holds (Delete(b3,b4,b5)) @ = Delete(b3 @,b5,b4);

:: LAPLACE:th 15
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4 being FinSequence of the carrier of b2
for b5, b6 being natural set
      st b5 in Seg b1 & b6 in Seg b1
   holds Delete(b3,b5,b6) = Delete(ReplaceLine(b3,b5,b4),b5,b6);

:: LAPLACE:funcnot 3 => LAPLACE:func 3
definition
  let a1, a2, a3 be natural set;
  let a4 be non empty set;
  let a5 be Matrix of a2,a3,a4;
  let a6 be FinSequence of a4;
  func ReplaceCol(A5,A1,A6) -> Matrix of a2,a3,a4 means
    len it = len a5 &
     width it = width a5 &
     (for b1, b2 being natural set
           st [b1,b2] in Indices a5
        holds (b2 = a1 or it *(b1,b2) = a5 *(b1,b2)) & (b2 = a1 implies it *(b1,a1) = a6 . b1))
    if len a6 = len a5
    otherwise it = a5;
end;

:: LAPLACE:def 2
theorem
for b1, b2, b3 being natural set
for b4 being non empty set
for b5 being Matrix of b2,b3,b4
for b6 being FinSequence of b4
for b7 being Matrix of b2,b3,b4 holds
   (len b6 = len b5 implies    (b7 = ReplaceCol(b5,b1,b6)
    iff
       len b7 = len b5 &
        width b7 = width b5 &
        (for b8, b9 being natural set
              st [b8,b9] in Indices b5
           holds (b9 = b1 or b7 *(b8,b9) = b5 *(b8,b9)) &
            (b9 = b1 implies b7 *(b8,b1) = b6 . b8)))) &
    (len b6 = len b5 or    (b7 = ReplaceCol(b5,b1,b6)
    iff
       b7 = b5));

:: LAPLACE:funcnot 4 => LAPLACE:func 3
notation
  let a1, a2, a3 be natural set;
  let a4 be non empty set;
  let a5 be Matrix of a2,a3,a4;
  let a6 be FinSequence of a4;
  synonym RCol(a5,a1,a6) for ReplaceCol(a5,a1,a6);
end;

:: LAPLACE:th 16
theorem
for b1, b2, b3 being natural set
for b4 being non empty set
for b5 being Matrix of b1,b2,b4
for b6 being FinSequence of b4
for b7 being natural set
      st b7 in Seg width b5
   holds (b7 = b3 & len b6 = len b5 implies Col(ReplaceCol(b5,b3,b6),b7) = b6) &
    (b7 = b3 or Col(ReplaceCol(b5,b3,b6),b7) = Col(b5,b7));

:: LAPLACE:th 17
theorem
for b1, b2, b3 being natural set
for b4 being non empty set
for b5 being Matrix of b1,b2,b4
for b6 being FinSequence of b4
      st not b3 in Seg width b5
   holds ReplaceCol(b5,b3,b6) = b5;

:: LAPLACE:th 18
theorem
for b1, b2, b3 being natural set
for b4 being non empty set
for b5 being Matrix of b1,b2,b4 holds
   ReplaceCol(b5,b3,Col(b5,b3)) = b5;

:: LAPLACE:th 19
theorem
for b1, b2, b3 being natural set
for b4 being non empty set
for b5 being FinSequence of b4
for b6 being Matrix of b1,b2,b4
for b7 being Matrix of b2,b1,b4
      st b7 = b6 @ & (b2 = {} implies b1 = {})
   holds ReplaceCol(b6,b3,b5) = (ReplaceLine(b7,b3,b5)) @;

:: LAPLACE:funcnot 5 => LAPLACE:func 4
definition
  let a1, a2 be natural set;
  let a3 be Element of Permutations (a2 + 1);
  assume a1 in Seg (a2 + 1);
  func Rem(A3,A1) -> Element of Permutations a2 means
    for b1 being natural set
          st b1 in Seg a2
       holds (a1 <= b1 or (a3 . a1 <= a3 . b1 or it . b1 = a3 . b1) &
         (a3 . a1 <= a3 . b1 implies it . b1 = (a3 . b1) - 1)) &
        (a1 <= b1 implies (a3 . a1 <= a3 . (b1 + 1) or it . b1 = a3 . (b1 + 1)) &
         (a3 . a1 <= a3 . (b1 + 1) implies it . b1 = (a3 . (b1 + 1)) - 1));
end;

:: LAPLACE:def 3
theorem
for b1, b2 being natural set
for b3 being Element of Permutations (b2 + 1)
   st b1 in Seg (b2 + 1)
for b4 being Element of Permutations b2 holds
      b4 = Rem(b3,b1)
   iff
      for b5 being natural set
            st b5 in Seg b2
         holds (b1 <= b5 or (b3 . b1 <= b3 . b5 or b4 . b5 = b3 . b5) &
           (b3 . b1 <= b3 . b5 implies b4 . b5 = (b3 . b5) - 1)) &
          (b1 <= b5 implies (b3 . b1 <= b3 . (b5 + 1) or b4 . b5 = b3 . (b5 + 1)) &
           (b3 . b1 <= b3 . (b5 + 1) implies b4 . b5 = (b3 . (b5 + 1)) - 1));

:: LAPLACE:th 20
theorem
for b1, b2, b3 being natural set
   st b2 in Seg (b1 + 1) & b3 in Seg (b1 + 1)
for b4 being set
      st b4 = {b5 where b5 is Element of Permutations (b1 + 1): b5 . b2 = b3}
   holds ex b5 being Function-like quasi_total Relation of b4,Permutations b1 st
      b5 is bijective(b4, Permutations b1) &
       (for b6 being Element of Permutations (b1 + 1)
             st b6 . b2 = b3
          holds b5 . b6 = Rem(b6,b2));

:: LAPLACE:th 21
theorem
for b1 being natural set
for b2 being Element of Permutations (b1 + 1)
for b3 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b4 being Element of the carrier of b3
for b5, b6 being natural set
      st b5 in Seg (b1 + 1) & b2 . b5 = b6
   holds -(b4,b2) = ((power b3) .(- 1_ b3,b5 + b6)) * -(b4,Rem(b2,b5));

:: LAPLACE:th 22
theorem
for b1 being natural set
for b2 being Element of Permutations (b1 + 1)
for b3 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b4, b5 being natural set
   st b4 in Seg (b1 + 1) & b2 . b4 = b5
for b6 being Matrix of b1 + 1,b1 + 1,the carrier of b3
for b7 being Matrix of b1,b1,the carrier of b3
      st b7 = Delete(b6,b4,b5)
   holds (Path_product b6) . b2 = (((power b3) .(- 1_ b3,b4 + b5)) * (b6 *(b4,b5))) * ((Path_product b7) . Rem(b2,b4));

:: LAPLACE:funcnot 6 => LAPLACE:func 5
definition
  let a1, a2, a3 be natural set;
  let a4 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a5 be Matrix of a3,a3,the carrier of a4;
  func Minor(A5,A1,A2) -> Element of the carrier of a4 equals
    Det Delete(a5,a1,a2);
end;

:: LAPLACE:def 4
theorem
for b1, b2, b3 being natural set
for b4 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b5 being Matrix of b3,b3,the carrier of b4 holds
   Minor(b5,b1,b2) = Det Delete(b5,b1,b2);

:: LAPLACE:funcnot 7 => LAPLACE:func 6
definition
  let a1, a2, a3 be natural set;
  let a4 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a5 be Matrix of a3,a3,the carrier of a4;
  func Cofactor(A5,A1,A2) -> Element of the carrier of a4 equals
    ((power a4) .(- 1_ a4,a1 + a2)) * Minor(a5,a1,a2);
end;

:: LAPLACE:def 5
theorem
for b1, b2, b3 being natural set
for b4 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b5 being Matrix of b3,b3,the carrier of b4 holds
   Cofactor(b5,b1,b2) = ((power b4) .(- 1_ b4,b1 + b2)) * Minor(b5,b1,b2);

:: LAPLACE:th 23
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3, b4 being natural set
   st b3 in Seg b1 & b4 in Seg b1
for b5 being Element of Fin Permutations b1
   st b5 = {b6 where b6 is Element of Permutations b1: b6 . b3 = b4}
for b6 being Matrix of b1,b1,the carrier of b2 holds
   (the addF of b2) $$(b5,Path_product b6) = (b6 *(b3,b4)) * Cofactor(b6,b3,b4);

:: LAPLACE:th 24
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4, b5 being natural set
      st b4 in Seg b1 & b5 in Seg b1
   holds Minor(b3,b4,b5) = Minor(b3 @,b5,b4);

:: LAPLACE:funcnot 8 => LAPLACE:func 7
definition
  let a1 be natural set;
  let a2 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a3 be Matrix of a1,a1,the carrier of a2;
  func Matrix_of_Cofactor A3 -> Matrix of a1,a1,the carrier of a2 means
    for b1, b2 being natural set
          st [b1,b2] in Indices it
       holds it *(b1,b2) = Cofactor(a3,b1,b2);
end;

:: LAPLACE:def 6
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3, b4 being Matrix of b1,b1,the carrier of b2 holds
   b4 = Matrix_of_Cofactor b3
iff
   for b5, b6 being natural set
         st [b5,b6] in Indices b4
      holds b4 *(b5,b6) = Cofactor(b3,b5,b6);

:: LAPLACE:funcnot 9 => LAPLACE:func 8
definition
  let a1, a2 be natural set;
  let a3 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a4 be Matrix of a1,a1,the carrier of a3;
  func LaplaceExpL(A4,A2) -> FinSequence of the carrier of a3 means
    len it = a1 &
     (for b1 being natural set
           st b1 in dom it
        holds it . b1 = (a4 *(a2,b1)) * Cofactor(a4,a2,b1));
end;

:: LAPLACE:def 7
theorem
for b1, b2 being natural set
for b3 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b4 being Matrix of b1,b1,the carrier of b3
for b5 being FinSequence of the carrier of b3 holds
      b5 = LaplaceExpL(b4,b2)
   iff
      len b5 = b1 &
       (for b6 being natural set
             st b6 in dom b5
          holds b5 . b6 = (b4 *(b2,b6)) * Cofactor(b4,b2,b6));

:: LAPLACE:funcnot 10 => LAPLACE:func 9
definition
  let a1, a2 be natural set;
  let a3 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a4 be Matrix of a1,a1,the carrier of a3;
  func LaplaceExpC(A4,A2) -> FinSequence of the carrier of a3 means
    len it = a1 &
     (for b1 being natural set
           st b1 in dom it
        holds it . b1 = (a4 *(b1,a2)) * Cofactor(a4,b1,a2));
end;

:: LAPLACE:def 8
theorem
for b1, b2 being natural set
for b3 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b4 being Matrix of b1,b1,the carrier of b3
for b5 being FinSequence of the carrier of b3 holds
      b5 = LaplaceExpC(b4,b2)
   iff
      len b5 = b1 &
       (for b6 being natural set
             st b6 in dom b5
          holds b5 . b6 = (b4 *(b6,b2)) * Cofactor(b4,b6,b2));

:: LAPLACE:th 25
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being natural set
for b4 being Matrix of b1,b1,the carrier of b2
      st b3 in Seg b1
   holds Det b4 = Sum LaplaceExpL(b4,b3);

:: LAPLACE:th 26
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4 being natural set
      st b4 in Seg b1
   holds LaplaceExpC(b3,b4) = LaplaceExpL(b3 @,b4);

:: LAPLACE:th 27
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being natural set
for b4 being Matrix of b1,b1,the carrier of b2
      st b3 in Seg b1
   holds Det b4 = Sum LaplaceExpC(b4,b3);

:: LAPLACE:th 28
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being FinSequence of the carrier of b2
for b4 being Matrix of b1,b1,the carrier of b2
for b5 being Element of Permutations b1
for b6 being natural set
      st len b3 = b1 & b6 in Seg b1
   holds mlt(Line(Matrix_of_Cofactor b4,b6),b3) = LaplaceExpL(ReplaceLine(b4,b6,b3),b6);

:: LAPLACE:th 29
theorem
for b1, b2, b3 being natural set
for b4 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b5 being Matrix of b2,b2,the carrier of b4
      st b1 in Seg b2
   holds (Line(b5,b3)) "*" Col((Matrix_of_Cofactor b5) @,b1) = Det ReplaceLine(b5,b1,Line(b5,b3));

:: LAPLACE:th 30
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
      st Det b3 <> 0. b2
   holds b3 * ((Det b3) " * ((Matrix_of_Cofactor b3) @)) = 1.(b2,b1);

:: LAPLACE:th 31
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
for b4 being FinSequence of the carrier of b2
for b5 being natural set
      st len b4 = b1 & b5 in Seg b1
   holds mlt(Col(Matrix_of_Cofactor b3,b5),b4) = LaplaceExpL(ReplaceLine(b3 @,b5,b4),b5);

:: LAPLACE:th 32
theorem
for b1, b2, b3 being natural set
for b4 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b5 being Matrix of b2,b2,the carrier of b4
      st b1 in Seg b2 & b3 in Seg b2
   holds (Line((Matrix_of_Cofactor b5) @,b1)) "*" Col(b5,b3) = Det ReplaceLine(b5 @,b1,Line(b5 @,b3));

:: LAPLACE:th 33
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
      st Det b3 <> 0. b2
   holds ((Det b3) " * ((Matrix_of_Cofactor b3) @)) * b3 = 1.(b2,b1);

:: LAPLACE:th 34
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2 holds
      b3 is invertible(b1, b2)
   iff
      Det b3 <> 0. b2;

:: LAPLACE:th 35
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
      st Det b3 <> 0. b2
   holds b3 ~ = (Det b3) " * ((Matrix_of_Cofactor b3) @);

:: LAPLACE:th 36
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
   st b3 is invertible(b1, b2)
for b4, b5 being natural set
      st [b4,b5] in Indices (b3 ~)
   holds b3 ~ *(b4,b5) = ((Det b3) " * ((power b2) .(- 1_ b2,b4 + b5))) * Minor(b3,b5,b4);

:: LAPLACE:th 37
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
   st Det b3 <> 0. b2
for b4, b5 being tabular FinSequence of (the carrier of b2) *
      st len b4 = b1 & b3 * b4 = b5
   holds b4 = b3 ~ * b5 &
    (for b6, b7 being natural set
          st [b6,b7] in Indices b4
       holds b4 *(b6,b7) = (Det b3) " * Det ReplaceCol(b3,b6,Col(b5,b7)));

:: LAPLACE:th 38
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
   st Det b3 <> 0. b2
for b4, b5 being tabular FinSequence of (the carrier of b2) *
      st width b4 = b1 & b4 * b3 = b5
   holds b4 = b5 * (b3 ~) &
    (for b6, b7 being natural set
          st [b6,b7] in Indices b4
       holds b4 *(b6,b7) = (Det b3) " * Det ReplaceLine(b3,b7,Line(b5,b6)));

:: LAPLACE:funcnot 11 => LAPLACE:func 10
definition
  let a1 be non empty set;
  let a2 be FinSequence of a1;
  redefine func <*a2*> -> Matrix of 1,len a2,a1;
end;

:: LAPLACE:funcnot 12 => LAPLACE:func 11
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a2 be tabular FinSequence of (the carrier of a1) *;
  let a3 be FinSequence of the carrier of a1;
  func A2 * A3 -> tabular FinSequence of (the carrier of a1) * equals
    a2 * (<*a3*> @);
end;

:: LAPLACE:def 9
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b2 being tabular FinSequence of (the carrier of b1) *
for b3 being FinSequence of the carrier of b1 holds
   b2 * b3 = b2 * (<*b3*> @);

:: LAPLACE:funcnot 13 => LAPLACE:func 12
definition
  let a1 be non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr;
  let a2 be tabular FinSequence of (the carrier of a1) *;
  let a3 be FinSequence of the carrier of a1;
  func A3 * A2 -> tabular FinSequence of (the carrier of a1) * equals
    <*a3*> * a2;
end;

:: LAPLACE:def 10
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b2 being tabular FinSequence of (the carrier of b1) *
for b3 being FinSequence of the carrier of b1 holds
   b3 * b2 = <*b3*> * b2;

:: LAPLACE:th 39
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
   st Det b3 <> 0. b2
for b4, b5 being FinSequence of the carrier of b2
      st len b4 = b1 & b3 * b4 = <*b5*> @
   holds <*b4*> @ = b3 ~ * b5 &
    (for b6 being natural set
          st b6 in Seg b1
       holds b4 . b6 = (Det b3) " * Det ReplaceCol(b3,b6,b5));

:: LAPLACE:th 40
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible associative commutative Abelian add-associative right_zeroed well-unital distributive doubleLoopStr
for b3 being Matrix of b1,b1,the carrier of b2
   st Det b3 <> 0. b2
for b4, b5 being FinSequence of the carrier of b2
      st len b4 = b1 & b4 * b3 = <*b5*>
   holds <*b4*> = b5 * (b3 ~) &
    (for b6 being natural set
          st b6 in Seg b1
       holds b4 . b6 = (Det b3) " * Det ReplaceLine(b3,b6,b5));