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