let n be Nat; for K being Field
for M1, M2 being Matrix of n,K st M1 is_congruent_Matrix_of M2 & n > 0 holds
M2 is_congruent_Matrix_of M1
let K be Field; for M1, M2 being Matrix of n,K st M1 is_congruent_Matrix_of M2 & n > 0 holds
M2 is_congruent_Matrix_of M1
let M1, M2 be Matrix of n,K; ( M1 is_congruent_Matrix_of M2 & n > 0 implies M2 is_congruent_Matrix_of M1 )
assume that
A1:
M1 is_congruent_Matrix_of M2
and
A2:
n > 0
; M2 is_congruent_Matrix_of M1
consider M being Matrix of n,K such that
A3:
M is invertible
and
A4:
M1 = ((M @) * M2) * M
by A1;
A5:
M ~ is_reverse_of M
by A3, MATRIX_6:def 4;
take
M ~
; MATRIX_8:def 6 ( M ~ is invertible & M2 = (((M ~) @) * M1) * (M ~) )
A6:
width (M ~) = n
by MATRIX_0:24;
A7:
( len (M @) = n & width (M @) = n )
by MATRIX_0:24;
A8:
width M = n
by MATRIX_0:24;
A9:
len (M ~) = n
by MATRIX_0:24;
( len M = n & width ((M @) * M2) = n )
by MATRIX_0:24;
then A10: M1 * (M ~) =
((M @) * M2) * (M * (M ~))
by A4, A8, A9, MATRIX_3:33
.=
((M @) * M2) * (1. (K,n))
by A5, MATRIX_6:def 2
.=
(M @) * M2
by MATRIX_3:19
;
A11:
len M2 = n
by MATRIX_0:24;
A12:
width ((M ~) @) = n
by MATRIX_0:24;
( len M1 = n & width M1 = n )
by MATRIX_0:24;
then (((M ~) @) * M1) * (M ~) =
((M ~) @) * (M1 * (M ~))
by A9, A12, MATRIX_3:33
.=
(((M ~) @) * (M @)) * M2
by A7, A11, A12, A10, MATRIX_3:33
.=
((M * (M ~)) @) * M2
by A2, A8, A9, A6, MATRIX_3:22
.=
((1. (K,n)) @) * M2
by A5, MATRIX_6:def 2
.=
(1. (K,n)) * M2
by MATRIX_6:10
.=
M2
by MATRIX_3:18
;
hence
( M ~ is invertible & M2 = (((M ~) @) * M1) * (M ~) )
by A3; verum