Generalize trace_mult_sym to square products of non-square matrices.
authorStephen W. Nuchia
Tue, 25 Jun 2013 17:13:09 -0500
changeset 52451 e64c1344f21b
parent 52450 e09e1091394d
child 52452 2207825d67f3
Generalize trace_mult_sym to square products of non-square matrices.
src/HOL/Multivariate_Analysis/Determinants.thy
--- a/src/HOL/Multivariate_Analysis/Determinants.thy	Tue Jun 25 20:38:06 2013 +0200
+++ b/src/HOL/Multivariate_Analysis/Determinants.thy	Tue Jun 25 17:13:09 2013 -0500
@@ -84,7 +84,7 @@
 lemma trace_sub: "trace ((A::'a::comm_ring_1^'n^'n) - B) = trace A - trace B"
   by (simp add: trace_def setsum_subtractf)
 
-lemma trace_mul_sym:"trace ((A::'a::comm_semiring_1^'n^'n) ** B) = trace (B**A)"
+lemma trace_mul_sym:"trace ((A::'a::comm_semiring_1^'n^'m) ** B) = trace (B**A)"
   apply (simp add: trace_def matrix_matrix_mult_def)
   apply (subst setsum_commute)
   by (simp add: mult_commute)