let l, k, n, m be Nat; :: thesis: for K being Field
for M, M1 being Matrix of n,m,K st l in Seg (width M) & k in Seg (width M) & n > 0 & m > 0 & M1 = M @ holds
(ILine M1,l,k) @ = ICol M,l,k
let K be Field; :: thesis: for M, M1 being Matrix of n,m,K st l in Seg (width M) & k in Seg (width M) & n > 0 & m > 0 & M1 = M @ holds
(ILine M1,l,k) @ = ICol M,l,k
let M, M1 be Matrix of n,m,K; :: thesis: ( l in Seg (width M) & k in Seg (width M) & n > 0 & m > 0 & M1 = M @ implies (ILine M1,l,k) @ = ICol M,l,k )
assume A1:
( l in Seg (width M) & k in Seg (width M) & n > 0 & m > 0 & M1 = M @ )
; :: thesis: (ILine M1,l,k) @ = ICol M,l,k
then
( len M = n & width M = m )
by MATRIX_1:24;
then A2:
( len M1 = m & width M1 = n )
by A1, MATRIX_2:12;
( len (ILine M1,l,k) = len M1 & width (ILine M1,l,k) = width M1 )
by Def1, Th1;
then
( len ((ILine M1,l,k) @ ) = n & width ((ILine M1,l,k) @ ) = m )
by A1, A2, MATRIX_2:12;
then A3:
(ILine M1,l,k) @ is Matrix of n,m,K
by A1, MATRIX_1:20;
then consider M2 being Matrix of n,m,K such that
A4:
M2 = (ILine M1,l,k) @
;
A5:
for i, j being Nat st i in dom M & j in Seg (width M) holds
( ( j = l implies M2 * i,j = M * i,k ) & ( j = k implies M2 * i,j = M * i,l ) & ( j <> l & j <> k implies M2 * i,j = M * i,j ) )
proof
let i,
j be
Nat;
:: thesis: ( i in dom M & j in Seg (width M) implies ( ( j = l implies M2 * i,j = M * i,k ) & ( j = k implies M2 * i,j = M * i,l ) & ( j <> l & j <> k implies M2 * i,j = M * i,j ) ) )
assume A6:
(
i in dom M &
j in Seg (width M) )
;
:: thesis: ( ( j = l implies M2 * i,j = M * i,k ) & ( j = k implies M2 * i,j = M * i,l ) & ( j <> l & j <> k implies M2 * i,j = M * i,j ) )
then A7:
[i,j] in Indices M
by ZFMISC_1:106;
then A8:
[j,i] in Indices M1
by A1, MATRIX_1:def 7;
then A9:
(
j in dom M1 &
i in Seg (width M1) )
by ZFMISC_1:106;
dom (ILine M1,l,k) =
Seg (len (ILine M1,l,k))
by FINSEQ_1:def 3
.=
Seg (len M1)
by Def1
.=
dom M1
by FINSEQ_1:def 3
;
then A10:
[j,i] in Indices (ILine M1,l,k)
by A8, Th1;
thus
(
j = l implies
M2 * i,
j = M * i,
k )
:: thesis: ( ( j = k implies M2 * i,j = M * i,l ) & ( j <> l & j <> k implies M2 * i,j = M * i,j ) )proof
assume A11:
j = l
;
:: thesis: M2 * i,j = M * i,k
A12:
[i,k] in Indices M
by A1, A6, ZFMISC_1:106;
M2 * i,
j =
(ILine M1,l,k) * j,
i
by A4, A10, MATRIX_1:def 7
.=
M1 * k,
i
by A9, A11, Def1
.=
M * i,
k
by A1, A12, MATRIX_1:def 7
;
hence
M2 * i,
j = M * i,
k
;
:: thesis: verum
end;
thus
(
j = k implies
M2 * i,
j = M * i,
l )
:: thesis: ( j <> l & j <> k implies M2 * i,j = M * i,j )proof
assume A13:
j = k
;
:: thesis: M2 * i,j = M * i,l
A14:
[i,l] in Indices M
by A1, A6, ZFMISC_1:106;
M2 * i,
j =
(ILine M1,l,k) * j,
i
by A4, A10, MATRIX_1:def 7
.=
M1 * l,
i
by A9, A13, Def1
.=
M * i,
l
by A1, A14, MATRIX_1:def 7
;
hence
M2 * i,
j = M * i,
l
;
:: thesis: verum
end;
assume A15:
(
j <> l &
j <> k )
;
:: thesis: M2 * i,j = M * i,j
M2 * i,
j =
(ILine M1,l,k) * j,
i
by A4, A10, MATRIX_1:def 7
.=
M1 * j,
i
by A9, A15, Def1
.=
M * i,
j
by A1, A7, MATRIX_1:def 7
;
hence
M2 * i,
j = M * i,
j
;
:: thesis: verum
end;
for i, j being Nat st [i,j] in Indices (ICol M,l,k) holds
(ICol M,l,k) * i,j = ((ILine M1,l,k) @ ) * i,j
proof
let i,
j be
Nat;
:: thesis: ( [i,j] in Indices (ICol M,l,k) implies (ICol M,l,k) * i,j = ((ILine M1,l,k) @ ) * i,j )
assume A16:
[i,j] in Indices (ICol M,l,k)
;
:: thesis: (ICol M,l,k) * i,j = ((ILine M1,l,k) @ ) * i,j
(
Indices (ICol M,l,k) = Indices ((ILine M1,l,k) @ ) &
Indices M = Indices (ICol M,l,k) )
by A4, MATRIX_1:27;
then
(
i in dom M &
j in Seg (width M) )
by A16, ZFMISC_1:106;
then
( (
j = l implies
((ILine M1,l,k) @ ) * i,
j = M * i,
k ) & (
j = k implies
((ILine M1,l,k) @ ) * i,
j = M * i,
l ) & (
j <> l &
j <> k implies
((ILine M1,l,k) @ ) * i,
j = M * i,
j ) & (
j = l implies
(ICol M,l,k) * i,
j = M * i,
k ) & (
j = k implies
(ICol M,l,k) * i,
j = M * i,
l ) & (
j <> l &
j <> k implies
(ICol M,l,k) * i,
j = M * i,
j ) )
by A1, A4, A5, Def4;
hence
(ICol M,l,k) * i,
j = ((ILine M1,l,k) @ ) * i,
j
;
:: thesis: verum
end;
hence
(ILine M1,l,k) @ = ICol M,l,k
by A3, MATRIX_1:28; :: thesis: verum