let n be Nat; :: thesis: for K being Field

for M1, M2 being Matrix of n,K st M1 = M2 * M1 & M1 is invertible holds

M1 commutes_with M2

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

M1 commutes_with M2

let M1, M2 be Matrix of n,K; :: thesis: ( M1 = M2 * M1 & M1 is invertible implies M1 commutes_with M2 )

assume that

A1: M1 = M2 * M1 and

A2: M1 is invertible ; :: thesis: M1 commutes_with M2

A3: M1 ~ is_reverse_of M1 by A2, Def4;

A4: ( width M2 = n & len (M1 ~) = n ) by MATRIX_0:24;

A5: ( len M1 = n & width M1 = n ) by MATRIX_0:24;

M2 = M2 * (1. (K,n)) by MATRIX_3:19

.= M2 * (M1 * (M1 ~)) by A3

.= M1 * (M1 ~) by A1, A5, A4, MATRIX_3:33

.= 1. (K,n) by A3 ;

hence M1 commutes_with M2 by Th6; :: thesis: verum

for M1, M2 being Matrix of n,K st M1 = M2 * M1 & M1 is invertible holds

M1 commutes_with M2

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

M1 commutes_with M2

let M1, M2 be Matrix of n,K; :: thesis: ( M1 = M2 * M1 & M1 is invertible implies M1 commutes_with M2 )

assume that

A1: M1 = M2 * M1 and

A2: M1 is invertible ; :: thesis: M1 commutes_with M2

A3: M1 ~ is_reverse_of M1 by A2, Def4;

A4: ( width M2 = n & len (M1 ~) = n ) by MATRIX_0:24;

A5: ( len M1 = n & width M1 = n ) by MATRIX_0:24;

M2 = M2 * (1. (K,n)) by MATRIX_3:19

.= M2 * (M1 * (M1 ~)) by A3

.= M1 * (M1 ~) by A1, A5, A4, MATRIX_3:33

.= 1. (K,n) by A3 ;

hence M1 commutes_with M2 by Th6; :: thesis: verum