let n be Nat; :: thesis: for K being Field
for M1, M2 being Matrix of n,K st M1 is invertible & M1 commutes_with M2 holds
M1 ~ commutes_with M2

let K be Field; :: thesis: for M1, M2 being Matrix of n,K st M1 is invertible & M1 commutes_with M2 holds
M1 ~ commutes_with M2

let M1, M2 be Matrix of n,K; :: thesis: ( M1 is invertible & M1 commutes_with M2 implies M1 ~ commutes_with M2 )
assume A1: ( M1 is invertible & M1 commutes_with M2 ) ; :: thesis: M1 ~ commutes_with M2
A2: ( width M1 = n & len M1 = n & width M2 = n & len M2 = n & width (M1 ~ ) = n & len (M1 ~ ) = n ) by MATRIX_1:25;
A3: ( len (M2 * M1) = n & width (M2 * M1) = n ) by MATRIX_1:25;
A4: M1 ~ is_reverse_of M1 by A1, Def4;
M2 = (1. K,n) * M2 by MATRIX_3:20
.= ((M1 ~ ) * M1) * M2 by A4, Def2
.= (M1 ~ ) * (M1 * M2) by A2, MATRIX_3:35
.= (M1 ~ ) * (M2 * M1) by A1, Def1 ;
then M2 * (M1 ~ ) = (M1 ~ ) * ((M2 * M1) * (M1 ~ )) by A2, A3, MATRIX_3:35
.= (M1 ~ ) * (M2 * (M1 * (M1 ~ ))) by A2, MATRIX_3:35
.= (M1 ~ ) * (M2 * (1. K,n)) by A4, Def2
.= (M1 ~ ) * M2 by MATRIX_3:21 ;
hence M1 ~ commutes_with M2 by Def1; :: thesis: verum