Article MATRIXR1, MML version 4.99.1005
:: MATRIXR1:th 1
theorem
for b1, b2 being Element of REAL
for b3, b4 being Element of the carrier of F_Real
st b1 = b3 & b2 = b4
holds b1 + b2 = b3 + b4;
:: MATRIXR1:th 2
theorem
for b1, b2 being Element of REAL
for b3, b4 being Element of the carrier of F_Real
st b1 = b3 & b2 = b4
holds b1 * b2 = b3 * b4;
:: MATRIXR1:th 3
theorem
for b1 being FinSequence of REAL holds
b1 + - b1 = 0* len b1 & b1 - b1 = 0* len b1;
:: MATRIXR1:th 4
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds b1 - b2 = b1 + - b2;
:: MATRIXR1:th 5
theorem
for b1 being FinSequence of REAL holds
b1 - 0* len b1 = b1;
:: MATRIXR1:th 6
theorem
for b1 being FinSequence of REAL holds
(0* len b1) - b1 = - b1;
:: MATRIXR1:th 7
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds b1 - - b2 = b1 + b2;
:: MATRIXR1:th 8
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds - (b1 - b2) = b2 - b1;
:: MATRIXR1:th 9
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds - (b1 - b2) = (- b1) + b2;
:: MATRIXR1:th 10
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2 & b1 - b2 = 0* len b1
holds b1 = b2;
:: MATRIXR1:th 11
theorem
for b1, b2, b3 being FinSequence of REAL
st len b1 = len b2 & len b2 = len b3
holds (b1 - b2) - b3 = b1 - (b2 + b3);
:: MATRIXR1:th 12
theorem
for b1, b2, b3 being FinSequence of REAL
st len b1 = len b2 & len b2 = len b3
holds b1 + (b2 - b3) = (b1 + b2) - b3;
:: MATRIXR1:th 13
theorem
for b1, b2, b3 being FinSequence of REAL
st len b1 = len b2 & len b2 = len b3
holds b1 - (b2 - b3) = (b1 - b2) + b3;
:: MATRIXR1:th 14
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds b1 = (b1 + b2) - b2;
:: MATRIXR1:th 15
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2
holds b1 = (b1 - b2) + b2;
:: MATRIXR1:th 16
theorem
for b1 being non empty multMagma
for b2 being FinSequence of the carrier of b1
for b3 being Element of the carrier of b1 holds
len (b3 * b2) = len b2;
:: MATRIXR1:th 17
theorem
for b1 being Element of REAL
for b2 being Element of the carrier of F_Real
for b3 being FinSequence of REAL
for b4 being FinSequence of the carrier of F_Real
st b1 = b2 & b3 = b4
holds b1 * b3 = b2 * b4;
:: MATRIXR1:th 18
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b2 being Element of the carrier of b1
for b3 being tabular FinSequence of (the carrier of b1) * holds
Indices (b2 * b3) = Indices b3;
:: MATRIXR1:th 19
theorem
for b1 being natural set
for b2 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b3 being Element of the carrier of b2
for b4 being tabular FinSequence of (the carrier of b2) *
st 1 <= b1 & b1 <= width b4
holds Col(b3 * b4,b1) = b3 * Col(b4,b1);
:: MATRIXR1:th 20
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b2 being Element of the carrier of b1
for b3 being tabular FinSequence of (the carrier of b1) *
for b4 being natural set
st 1 <= b4 & b4 <= len b3
holds Line(b2 * b3,b4) = b2 * Line(b3,b4);
:: MATRIXR1:th 21
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b2, b3 being tabular FinSequence of (the carrier of b1) *
st width b2 = len b3
holds ex b4 being tabular FinSequence of (the carrier of b1) * st
len b4 = len b2 &
width b4 = width b3 &
(for b5, b6 being natural set
st [b5,b6] in Indices b4
holds b4 *(b5,b6) = (Line(b2,b5)) "*" Col(b3,b6));
:: MATRIXR1:th 22
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b2 being Element of the carrier of b1
for b3, b4 being tabular FinSequence of (the carrier of b1) *
st width b3 = len b4
holds b3 * (b2 * b4) = b2 * (b3 * b4);
:: MATRIXR1:funcnot 1 => MATRIXR1:func 1
definition
let a1 be tabular FinSequence of REAL *;
func MXR2MXF A1 -> tabular FinSequence of (the carrier of F_Real) * equals
a1;
end;
:: MATRIXR1:def 1
theorem
for b1 being tabular FinSequence of REAL * holds
MXR2MXF b1 = b1;
:: MATRIXR1:funcnot 2 => MATRIXR1:func 2
definition
let a1 be tabular FinSequence of (the carrier of F_Real) *;
func MXF2MXR A1 -> tabular FinSequence of REAL * equals
a1;
end;
:: MATRIXR1:def 2
theorem
for b1 being tabular FinSequence of (the carrier of F_Real) * holds
MXF2MXR b1 = b1;
:: MATRIXR1:th 23
theorem
for b1, b2 being set
for b3 being tabular FinSequence of b1 *
for b4 being tabular FinSequence of b2 *
st b3 = b4
for b5, b6 being natural set
st [b5,b6] in Indices b3
holds b3 *(b5,b6) = b4 *(b5,b6);
:: MATRIXR1:th 24
theorem
for b1 being non empty non degenerated right_complementable almost_left_invertible Abelian add-associative right_zeroed associative commutative well-unital distributive doubleLoopStr
for b2, b3 being tabular FinSequence of (the carrier of b1) * holds
Indices (b2 + b3) = Indices b2;
:: MATRIXR1:funcnot 3 => MATRIXR1:func 3
definition
let a1, a2 be tabular FinSequence of REAL *;
func A1 + A2 -> tabular FinSequence of REAL * equals
MXF2MXR ((MXR2MXF a1) + MXR2MXF a2);
end;
:: MATRIXR1:def 3
theorem
for b1, b2 being tabular FinSequence of REAL * holds
b1 + b2 = MXF2MXR ((MXR2MXF b1) + MXR2MXF b2);
:: MATRIXR1:th 25
theorem
for b1, b2 being tabular FinSequence of REAL * holds
len (b1 + b2) = len b1 &
width (b1 + b2) = width b1 &
(for b3, b4 being natural set
st [b3,b4] in Indices b1
holds (b1 + b2) *(b3,b4) = (b1 *(b3,b4)) + (b2 *(b3,b4)));
:: MATRIXR1:th 26
theorem
for b1, b2, b3 being tabular FinSequence of REAL *
st len b1 = len b2 &
width b1 = width b2 &
len b3 = len b1 &
width b3 = width b1 &
(for b4, b5 being natural set
st [b4,b5] in Indices b1
holds b3 *(b4,b5) = (b1 *(b4,b5)) + (b2 *(b4,b5)))
holds b3 = b1 + b2;
:: MATRIXR1:funcnot 4 => MATRIXR1:func 4
definition
let a1 be tabular FinSequence of REAL *;
func - A1 -> tabular FinSequence of REAL * equals
MXF2MXR - MXR2MXF a1;
end;
:: MATRIXR1:def 4
theorem
for b1 being tabular FinSequence of REAL * holds
- b1 = MXF2MXR - MXR2MXF b1;
:: MATRIXR1:funcnot 5 => MATRIXR1:func 5
definition
let a1, a2 be tabular FinSequence of REAL *;
func A1 - A2 -> tabular FinSequence of REAL * equals
MXF2MXR ((MXR2MXF a1) - MXR2MXF a2);
end;
:: MATRIXR1:def 5
theorem
for b1, b2 being tabular FinSequence of REAL * holds
b1 - b2 = MXF2MXR ((MXR2MXF b1) - MXR2MXF b2);
:: MATRIXR1:funcnot 6 => MATRIXR1:func 6
definition
let a1, a2 be tabular FinSequence of REAL *;
func A1 * A2 -> tabular FinSequence of REAL * equals
MXF2MXR ((MXR2MXF a1) * MXR2MXF a2);
end;
:: MATRIXR1:def 6
theorem
for b1, b2 being tabular FinSequence of REAL * holds
b1 * b2 = MXF2MXR ((MXR2MXF b1) * MXR2MXF b2);
:: MATRIXR1:funcnot 7 => MATRIXR1:func 7
definition
let a1 be real set;
let a2 be tabular FinSequence of REAL *;
func A1 * A2 -> tabular FinSequence of REAL * means
for b1 being Element of the carrier of F_Real
st b1 = a1
holds it = MXF2MXR (b1 * MXR2MXF a2);
end;
:: MATRIXR1:def 7
theorem
for b1 being real set
for b2, b3 being tabular FinSequence of REAL * holds
b3 = b1 * b2
iff
for b4 being Element of the carrier of F_Real
st b4 = b1
holds b3 = MXF2MXR (b4 * MXR2MXF b2);
:: MATRIXR1:th 27
theorem
for b1 being Element of REAL
for b2 being tabular FinSequence of REAL * holds
len (b1 * b2) = len b2 & width (b1 * b2) = width b2;
:: MATRIXR1:th 28
theorem
for b1 being Element of REAL
for b2 being tabular FinSequence of REAL * holds
Indices (b1 * b2) = Indices b2;
:: MATRIXR1:th 29
theorem
for b1 being Element of REAL
for b2 being tabular FinSequence of REAL *
for b3, b4 being natural set
st [b3,b4] in Indices b2
holds (b1 * b2) *(b3,b4) = b1 * (b2 *(b3,b4));
:: MATRIXR1:th 30
theorem
for b1 being Element of REAL
for b2 being tabular FinSequence of REAL *
st 0 < len b2 & 0 < width b2
holds (b1 * b2) @ = b1 * (b2 @);
:: MATRIXR1:th 31
theorem
for b1 being Element of REAL
for b2 being natural set
for b3 being tabular FinSequence of REAL *
st 0 < len b3 & b2 in dom b3
holds (ex b4 being FinSequence of REAL st
b4 = b3 . b2) &
(for b4 being FinSequence of REAL
st b4 = b3 . b2
holds (b1 * b3) . b2 = b1 * b4);
:: MATRIXR1:th 32
theorem
for b1 being tabular FinSequence of REAL * holds
1 * b1 = b1;
:: MATRIXR1:th 33
theorem
for b1 being tabular FinSequence of REAL * holds
b1 + b1 = 2 * b1;
:: MATRIXR1:th 34
theorem
for b1 being tabular FinSequence of REAL * holds
(b1 + b1) + b1 = 3 * b1;
:: MATRIXR1:funcnot 8 => MATRIXR1:func 8
definition
let a1, a2 be natural set;
func 0_Rmatrix(A1,A2) -> tabular FinSequence of REAL * equals
MXF2MXR 0.(F_Real,a1,a2);
end;
:: MATRIXR1:def 8
theorem
for b1, b2 being natural set holds
0_Rmatrix(b1,b2) = MXF2MXR 0.(F_Real,b1,b2);
:: MATRIXR1:th 35
theorem
for b1, b2 being tabular FinSequence of REAL * holds
b1 - - b2 = b1 + b2;
:: MATRIXR1:th 36
theorem
for b1, b2 being natural set
for b3 being tabular FinSequence of REAL *
st len b3 = b1 & width b3 = b2 & 0 < b1
holds b3 + 0_Rmatrix(b1,b2) = b3 & (0_Rmatrix(b1,b2)) + b3 = b3;
:: MATRIXR1:th 37
theorem
for b1, b2 being tabular FinSequence of REAL *
st len b1 = len b2 & width b1 = width b2 & 0 < len b1 & b1 = b1 + b2
holds b2 = 0_Rmatrix(len b1,width b1);
:: MATRIXR1:th 38
theorem
for b1, b2 being tabular FinSequence of REAL *
st len b1 = len b2 & width b1 = width b2 & 0 < len b1 & b1 + b2 = 0_Rmatrix(len b1,width b1)
holds b2 = - b1;
:: MATRIXR1:th 39
theorem
for b1, b2 being tabular FinSequence of REAL *
st len b1 = len b2 & width b1 = width b2 & 0 < len b1 & b2 - b1 = b2
holds b1 = 0_Rmatrix(len b1,width b1);
:: MATRIXR1:th 40
theorem
for b1 being Element of REAL
for b2, b3 being tabular FinSequence of REAL *
st width b2 = len b3 & 0 < len b2 & 0 < len b3
holds b2 * (b1 * b3) = b1 * (b2 * b3);
:: MATRIXR1:th 41
theorem
for b1 being Element of REAL
for b2, b3 being tabular FinSequence of REAL *
st width b2 = len b3 & 0 < len b2 & 0 < len b3 & 0 < width b3
holds (b1 * b2) * b3 = b1 * (b2 * b3);
:: MATRIXR1:th 42
theorem
for b1 being tabular FinSequence of REAL * holds
b1 + 0_Rmatrix(len b1,width b1) = b1;
:: MATRIXR1:th 43
theorem
for b1 being real set
for b2, b3 being tabular FinSequence of REAL *
st len b2 = len b3 & width b2 = width b3 & 0 < len b2
holds b1 * (b2 + b3) = (b1 * b2) + (b1 * b3);
:: MATRIXR1:th 44
theorem
for b1 being tabular FinSequence of REAL *
st 0 < len b1
holds 0 * b1 = 0_Rmatrix(len b1,width b1);
:: MATRIXR1:funcnot 9 => MATRIXR1:func 9
definition
let a1 be FinSequence of REAL;
assume 0 < len a1;
func ColVec2Mx A1 -> tabular FinSequence of REAL * means
len it = len a1 &
width it = 1 &
(for b1 being natural set
st b1 in dom a1
holds it . b1 = <*a1 . b1*>);
end;
:: MATRIXR1:def 9
theorem
for b1 being FinSequence of REAL
st 0 < len b1
for b2 being tabular FinSequence of REAL * holds
b2 = ColVec2Mx b1
iff
len b2 = len b1 &
width b2 = 1 &
(for b3 being natural set
st b3 in dom b1
holds b2 . b3 = <*b1 . b3*>);
:: MATRIXR1:th 45
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL *
st 0 < len b1
holds b2 = ColVec2Mx b1
iff
Col(b2,1) = b1 & width b2 = 1;
:: MATRIXR1:th 46
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2 & 0 < len b1
holds ColVec2Mx (b1 + b2) = (ColVec2Mx b1) + ColVec2Mx b2;
:: MATRIXR1:th 47
theorem
for b1 being Element of REAL
for b2 being FinSequence of REAL
st 0 < len b2
holds ColVec2Mx (b1 * b2) = b1 * ColVec2Mx b2;
:: MATRIXR1:funcnot 10 => MATRIXR1:func 10
definition
let a1 be FinSequence of REAL;
func LineVec2Mx A1 -> tabular FinSequence of REAL * means
width it = len a1 &
len it = 1 &
(for b1 being natural set
st b1 in dom a1
holds it *(1,b1) = a1 . b1);
end;
:: MATRIXR1:def 10
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL * holds
b2 = LineVec2Mx b1
iff
width b2 = len b1 &
len b2 = 1 &
(for b3 being natural set
st b3 in dom b1
holds b2 *(1,b3) = b1 . b3);
:: MATRIXR1:th 48
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL * holds
b2 = LineVec2Mx b1
iff
Line(b2,1) = b1 & len b2 = 1;
:: MATRIXR1:th 49
theorem
for b1 being FinSequence of REAL
st 0 < len b1
holds (LineVec2Mx b1) @ = ColVec2Mx b1 & (ColVec2Mx b1) @ = LineVec2Mx b1;
:: MATRIXR1:th 50
theorem
for b1, b2 being FinSequence of REAL
st len b1 = len b2 & 0 < len b1
holds LineVec2Mx (b1 + b2) = (LineVec2Mx b1) + LineVec2Mx b2;
:: MATRIXR1:th 51
theorem
for b1 being Element of REAL
for b2 being FinSequence of REAL holds
LineVec2Mx (b1 * b2) = b1 * LineVec2Mx b2;
:: MATRIXR1:funcnot 11 => MATRIXR1:func 11
definition
let a1 be tabular FinSequence of REAL *;
let a2 be FinSequence of REAL;
func A1 * A2 -> FinSequence of REAL equals
Col(a1 * ColVec2Mx a2,1);
end;
:: MATRIXR1:def 11
theorem
for b1 being tabular FinSequence of REAL *
for b2 being FinSequence of REAL holds
b1 * b2 = Col(b1 * ColVec2Mx b2,1);
:: MATRIXR1:funcnot 12 => MATRIXR1:func 12
definition
let a1 be tabular FinSequence of REAL *;
let a2 be FinSequence of REAL;
func A2 * A1 -> FinSequence of REAL equals
Line((LineVec2Mx a2) * a1,1);
end;
:: MATRIXR1:def 12
theorem
for b1 being tabular FinSequence of REAL *
for b2 being FinSequence of REAL holds
b2 * b1 = Line((LineVec2Mx b2) * b1,1);
:: MATRIXR1:th 52
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL *
st 0 < len b2 &
0 < width b2 &
(len b2 = len b1 or width (b2 @) = len b1)
holds b2 @ * b1 = b1 * b2;
:: MATRIXR1:th 53
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL *
st 0 < len b2 &
0 < width b2 &
(width b2 = len b1 or len (b2 @) = len b1)
holds b2 * b1 = b1 * (b2 @);
:: MATRIXR1:th 54
theorem
for b1, b2 being tabular FinSequence of REAL *
st len b1 = len b2 & width b1 = width b2
for b3 being natural set
st 1 <= b3 & b3 <= width b1
holds Col(b1 + b2,b3) = (Col(b1,b3)) + Col(b2,b3);
:: MATRIXR1:th 55
theorem
for b1, b2 being tabular FinSequence of REAL *
st len b1 = len b2 & width b1 = width b2
for b3 being natural set
st 1 <= b3 & b3 <= len b1
holds Line(b1 + b2,b3) = (Line(b1,b3)) + Line(b2,b3);
:: MATRIXR1:th 56
theorem
for b1 being Element of REAL
for b2 being tabular FinSequence of REAL *
for b3 being natural set
st 1 <= b3 & b3 <= width b2
holds Col(b1 * b2,b3) = b1 * Col(b2,b3);
:: MATRIXR1:th 57
theorem
for b1, b2 being FinSequence of REAL
for b3 being tabular FinSequence of REAL *
st len b1 = len b2 & width b3 = len b1 & 0 < len b1 & 0 < len b3
holds b3 * (b1 + b2) = (b3 * b1) + (b3 * b2);
:: MATRIXR1:th 58
theorem
for b1, b2 being FinSequence of REAL
for b3 being tabular FinSequence of REAL *
st len b1 = len b2 & len b3 = len b1 & 0 < len b1
holds (b1 + b2) * b3 = (b1 * b3) + (b2 * b3);
:: MATRIXR1:th 59
theorem
for b1 being Element of REAL
for b2 being FinSequence of REAL
for b3 being tabular FinSequence of REAL *
st width b3 = len b2 & 0 < len b2 & 0 < len b3
holds b3 * (b1 * b2) = b1 * (b3 * b2);
:: MATRIXR1:th 60
theorem
for b1 being Element of REAL
for b2 being FinSequence of REAL
for b3 being tabular FinSequence of REAL *
st len b3 = len b2 & 0 < len b2 & 0 < width b3
holds (b1 * b2) * b3 = b1 * (b2 * b3);
:: MATRIXR1:th 61
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL *
st width b2 = len b1 & 0 < len b1 & 0 < len b2
holds len (b2 * b1) = len b2;
:: MATRIXR1:th 62
theorem
for b1 being FinSequence of REAL
for b2 being tabular FinSequence of REAL *
st len b2 = len b1
holds len (b1 * b2) = width b2;
:: MATRIXR1:th 63
theorem
for b1 being FinSequence of REAL
for b2, b3 being tabular FinSequence of REAL *
st len b2 = len b3 & width b2 = width b3 & width b2 = len b1 & 0 < len b2 & 0 < len b1
holds (b2 + b3) * b1 = (b2 * b1) + (b3 * b1);
:: MATRIXR1:th 64
theorem
for b1 being FinSequence of REAL
for b2, b3 being tabular FinSequence of REAL *
st len b2 = len b3 & width b2 = width b3 & len b2 = len b1 & 0 < width b2 & 0 < len b1
holds b1 * (b2 + b3) = (b1 * b2) + (b1 * b3);
:: MATRIXR1:th 65
theorem
for b1, b2 being Element of NAT
for b3 being FinSequence of REAL
st len b3 = b2 & 0 < b1 & 0 < b2
holds (0_Rmatrix(b1,b2)) * b3 = 0* b1;
:: MATRIXR1:th 66
theorem
for b1, b2 being Element of NAT
for b3 being FinSequence of REAL
st len b3 = b1 & 0 < b1 & 0 < b2
holds b3 * 0_Rmatrix(b1,b2) = 0* b2;