let n be Element of NAT ; :: thesis: for D being non empty set
for A being Matrix of n,D st A is line_circulant & n > 0 holds
A @ is col_circulant
let D be non empty set ; :: thesis: for A being Matrix of n,D st A is line_circulant & n > 0 holds
A @ is col_circulant
let A be Matrix of n,D; :: thesis: ( A is line_circulant & n > 0 implies A @ is col_circulant )
assume A1:
( A is line_circulant & n > 0 )
; :: thesis: A @ is col_circulant
then consider p being FinSequence of D such that
A2:
( len p = width A & A is_line_circulant_about p )
by Def2;
( len A = n & width A = n )
by MATRIX_1:25;
then A6:
len (A @ ) = len p
by A2, A1, MATRIX_2:12;
for i, j being Nat st [i,j] in Indices (A @ ) holds
(A @ ) * i,j = p . (((i - j) mod (len p)) + 1)
proof
let i,
j be
Nat;
:: thesis: ( [i,j] in Indices (A @ ) implies (A @ ) * i,j = p . (((i - j) mod (len p)) + 1) )
assume
[i,j] in Indices (A @ )
;
:: thesis: (A @ ) * i,j = p . (((i - j) mod (len p)) + 1)
then B2:
[i,j] in Indices A
by MATRIX_1:27;
B3:
Indices A = [:(Seg n),(Seg n):]
by MATRIX_1:25;
then
(
i in Seg n &
j in Seg n )
by B2, ZFMISC_1:106;
then B5:
[j,i] in Indices A
by B3, ZFMISC_1:106;
then
(A @ ) * i,
j = A * j,
i
by MATRIX_1:def 7;
hence
(A @ ) * i,
j = p . (((i - j) mod (len p)) + 1)
by A2, Def1, B5;
:: thesis: verum
end;
then A10:
A @ is_col_circulant_about p
by A6, Def4;
consider p being FinSequence of D such that
A11:
( len p = len (A @ ) & A @ is_col_circulant_about p )
by A6, A10;
take
p
; :: according to MATRIX16:def 5 :: thesis: ( len p = len (A @ ) & A @ is_col_circulant_about p )
thus
( len p = len (A @ ) & A @ is_col_circulant_about p )
by A11; :: thesis: verum