let R be non empty ZeroOneStr ; for I, K being Nat holds
not ( ( I = 0 implies K = 0 ) & ( K = 0 implies I = 0 ) & not for i, k being Nat holds (canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R) )
let I, K be Nat; not ( ( I = 0 implies K = 0 ) & ( K = 0 implies I = 0 ) & not for i, k being Nat holds (canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R) )
assume A1:
( I = 0 iff K = 0 )
; for i, k being Nat holds (canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R)
let i, k be Nat; (canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R)
set LHS = (canMat (i,k,I,K,R)) @ ;
set RHS = canMat (k,i,K,I,R);
per cases
( I = 0 or I > 0 )
;
suppose
I = 0
;
(canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R)then A2:
(
(canMat (i,k,I,K,R)) @ is
Matrix of
0 ,
R &
canMat (
k,
i,
K,
I,
R) is
Matrix of
0 ,
R )
by A1;
then
for
i2,
j2 being
Nat st
[i2,j2] in Indices ((canMat (i,k,I,K,R)) @) holds
((canMat (i,k,I,K,R)) @) * (
i2,
j2)
= (canMat (k,i,K,I,R)) * (
i2,
j2)
by MATRIX_0:22;
hence
(canMat (i,k,I,K,R)) @ = canMat (
k,
i,
K,
I,
R)
by A2, MATRIX_0:27;
verum end; suppose A3:
I > 0
;
(canMat (i,k,I,K,R)) @ = canMat (k,i,K,I,R)A4:
(
len (canMat (i,k,I,K,R)) = I &
width (canMat (i,k,I,K,R)) = K &
Indices (canMat (i,k,I,K,R)) = [:(Seg I),(Seg K):] )
by A3, MATRIX_0:23;
then A5:
(
len ((canMat (i,k,I,K,R)) @) = K &
width ((canMat (i,k,I,K,R)) @) = I )
by A1, A3, MATRIX_0:29;
A6:
(
len (canMat (k,i,K,I,R)) = K &
width (canMat (k,i,K,I,R)) = I &
Indices (canMat (k,i,K,I,R)) = [:(Seg K),(Seg I):] )
by A1, A3, MATRIX_0:23;
for
i2,
j2 being
Nat st
[i2,j2] in Indices ((canMat (i,k,I,K,R)) @) holds
((canMat (i,k,I,K,R)) @) * (
i2,
j2)
= (canMat (k,i,K,I,R)) * (
i2,
j2)
proof
let i2,
j2 be
Nat;
( [i2,j2] in Indices ((canMat (i,k,I,K,R)) @) implies ((canMat (i,k,I,K,R)) @) * (i2,j2) = (canMat (k,i,K,I,R)) * (i2,j2) )
assume A7:
[i2,j2] in Indices ((canMat (i,k,I,K,R)) @)
;
((canMat (i,k,I,K,R)) @) * (i2,j2) = (canMat (k,i,K,I,R)) * (i2,j2)
A8:
(
[j2,i2] in Indices (canMat (i,k,I,K,R)) &
[i2,j2] in Indices (canMat (k,i,K,I,R)) )
proof
thus
[j2,i2] in Indices (canMat (i,k,I,K,R))
by A7, MATRIX_0:def 6;
[i2,j2] in Indices (canMat (k,i,K,I,R))
hence
[i2,j2] in Indices (canMat (k,i,K,I,R))
by A4, A6, ZFMISC_1:88;
verum
end;
per cases
( [k,i] = [i2,j2] or [k,i] <> [i2,j2] )
;
suppose A9:
[k,i] = [i2,j2]
;
((canMat (i,k,I,K,R)) @) * (i2,j2) = (canMat (k,i,K,I,R)) * (i2,j2)then A10:
(
i = j2 &
k = i2 )
by XTUPLE_0:1;
thus ((canMat (i,k,I,K,R)) @) * (
i2,
j2) =
(canMat (i,k,I,K,R)) * (
j2,
i2)
by A8, MATRIX_0:def 6
.=
1. R
by A8, A10, Def1
.=
(canMat (k,i,K,I,R)) * (
i2,
j2)
by A8, A9, Def1
;
verum end; suppose A11:
[k,i] <> [i2,j2]
;
((canMat (i,k,I,K,R)) @) * (i2,j2) = (canMat (k,i,K,I,R)) * (i2,j2)A12:
[i,k] <> [j2,i2]
thus ((canMat (i,k,I,K,R)) @) * (
i2,
j2) =
(canMat (i,k,I,K,R)) * (
j2,
i2)
by A8, MATRIX_0:def 6
.=
0. R
by A8, A12, Def1
.=
(canMat (k,i,K,I,R)) * (
i2,
j2)
by A8, A11, Def1
;
verum end; end;
end; hence
(canMat (i,k,I,K,R)) @ = canMat (
k,
i,
K,
I,
R)
by A5, A6, MATRIX_0:21;
verum end; end;