let D be non empty set ; :: thesis: for n, m being Nat
for A being Matrix of D
for nt being Element of n -tuples_on NAT
for mt1, mt being Element of m -tuples_on NAT
for f being Function of (Seg m),(Seg m) st mt1 = mt * f holds
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
let n, m be Nat; :: thesis: for A being Matrix of D
for nt being Element of n -tuples_on NAT
for mt1, mt being Element of m -tuples_on NAT
for f being Function of (Seg m),(Seg m) st mt1 = mt * f holds
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
let A be Matrix of D; :: thesis: for nt being Element of n -tuples_on NAT
for mt1, mt being Element of m -tuples_on NAT
for f being Function of (Seg m),(Seg m) st mt1 = mt * f holds
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
let nt be Element of n -tuples_on NAT ; :: thesis: for mt1, mt being Element of m -tuples_on NAT
for f being Function of (Seg m),(Seg m) st mt1 = mt * f holds
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
let mt1, mt be Element of m -tuples_on NAT ; :: thesis: for f being Function of (Seg m),(Seg m) st mt1 = mt * f holds
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
let f be Function of (Seg m),(Seg m); :: thesis: ( mt1 = mt * f implies (Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f )
assume A1:
mt1 = mt * f
; :: thesis: (Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
set S1 = Segm A,nt,mt1;
set S = Segm A,nt,mt;
per cases
( m = 0 or n = 0 or ( m > 0 & n > 0 ) )
;
suppose A2:
(
m = 0 or
n = 0 )
;
:: thesis: (Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
(
len (Segm A,nt,mt1) = n &
len (Segm A,nt,mt) = n )
by MATRIX_1:def 3;
then
(
width (Segm A,nt,mt1) = 0 &
width (Segm A,nt,mt) = 0 )
by A2, Th1, MATRIX_1:def 4;
then
(
len ((Segm A,nt,mt1) @ ) = 0 &
len ((Segm A,nt,mt) @ ) = 0 )
by MATRIX_1:def 7;
then
(
(Segm A,nt,mt1) @ = {} &
(Segm A,nt,mt) @ = {} )
;
hence
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
;
:: thesis: verum end; suppose A3:
(
m > 0 &
n > 0 )
;
:: thesis: (Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * fthen
(
len (Segm A,nt,mt) = n &
width (Segm A,nt,mt) = m &
len (Segm A,nt,mt1) = n &
width (Segm A,nt,mt1) = m )
by Th1;
then A4:
(
width ((Segm A,nt,mt) @ ) = n &
len ((Segm A,nt,mt) @ ) = m &
width ((Segm A,nt,mt1) @ ) = n &
len ((Segm A,nt,mt1) @ ) = m )
by A3, MATRIX_2:12;
then reconsider S' =
(Segm A,nt,mt) @ ,
S1' =
(Segm A,nt,mt1) @ as
Matrix of
m,
n,
D by A3, MATRIX_1:20;
set Sf =
S' * f;
now let i,
j be
Nat;
:: thesis: ( [i,j] in Indices S1' implies S1' * i,j = (S' * f) * i,j )assume A5:
[i,j] in Indices S1'
;
:: thesis: S1' * i,j = (S' * f) * i,j
Indices S1' = Indices S'
by MATRIX_1:27;
then consider k being
Nat such that A6:
(
f . i = k &
[k,j] in Indices S' &
(S' * f) * i,
j = S' * k,
j )
by A5, MATRIX11:37;
reconsider i' =
i,
j' =
j,
k' =
k as
Element of
NAT by ORDINAL1:def 13;
Indices S1' = [:(Seg m),(Seg n):]
by A4, MATRIX_1:26;
then
(
i in Seg m &
Seg m = dom mt1 )
by A5, FINSEQ_2:144, ZFMISC_1:106;
then
(
mt1 . i' = mt . (f . i) &
[j,i] in Indices (Segm A,nt,mt1) &
[j,k] in Indices (Segm A,nt,mt) )
by A1, A5, A6, FUNCT_1:22, MATRIX_1:def 7;
then
(
S1' * i,
j = (Segm A,nt,mt1) * j,
i &
(Segm A,nt,mt1) * j',
i' = A * (nt . j'),
(mt . k') &
S' * k,
j = (Segm A,nt,mt) * j,
k &
(Segm A,nt,mt) * j',
k' = A * (nt . j'),
(mt . k') )
by A6, Def1, MATRIX_1:def 7;
hence
S1' * i,
j = (S' * f) * i,
j
by A6;
:: thesis: verum end; hence
(Segm A,nt,mt1) @ = ((Segm A,nt,mt) @ ) * f
by MATRIX_1:28;
:: thesis: verum end; end;